• mysql update语句的用法


    1.    单表的UPDATE语句:

     UPDATE[LOW_PRIORITY][IGNORE] tbl_name

    SET col_name1=expr1 [, col_name2=expr2 ...]
    [WHERE where_definition]
    [ORDER BY ...]
    [LIMIT row_count]

    2.    多表的UPDATE语句

    UPDATE [LOW_PRIORITY] [IGNORE] table_references
    SET col_name1=expr1 [, col_name2=expr2 ...]
    [WHERE where_definition]

         a.如果您使用LOW_PRIORITY关键词,则UPDATE的执行被延迟了,直到没有其它的客户端从表中读取为止。
        b.如果您使用IGNORE关键词,则即使在更新过程中出现错误,更新语句也不会中断。
        如果出现了重复关键字冲突,则这些行不会被更新。如果列被更新后,新值会导致数据转化错误,则这些行被更新为最接近的合法的值。
    eg:

    UPDATE beyond SET args1=args1+1
     UPDATE赋值被从左到右评估

    UPDATE beyond SET args1=args1*2,args1=args1+1

     3. 使用简单的 UPDATE

    UPDATE test.beyond b
    SET b.args1 = '001', b.args2 = '002'

    4. 把 WHERE 子句和 UPDATE 语句一起使用

    UPDATE test.beyond b
    SET b.args1 = '001', b.args2 = '002'
    WHERE b.args1 = '11' AND b.args2 = '22'

     5. 通过 UPDATE 语句使用来自另一个表的信息

    UPDATE test.beyond b,test.clzss c
    SET b.args1 = c.clzssId
    WHERE b.args1 = c.userid;
    
    UPDATE titles
    SET ytd_sales = titles.ytd_sales + sales.qty
    FROM titles, sales
    WHERE titles.title_id = sales.title_id
    AND sales.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

       这个例子假定,一种特定的商品在特定的日期只记录一批销售量,而且更新是最新的。如果不是这样(即如果一种特定的商品在同一天可以记录不止一批销售量),这里所示的例子将出错。例子可正确执行,但是每种商品只用一批销售量进行更新,而不管那一天实际销售了多少批。这是因为一个 UPDATE 语句从不会对同一行更新两次。

      对于特定的商品在同一天可销售不止一批的情况,每种商品的所有销售量必须在 UPDATE 语句中合计在一起。

    UPDATE titles
    SET ytd_sales =
    (SELECT SUM(qty)
    FROM sales
    WHERE sales.title_id = titles.title_id
    AND sales.ord_date IN (SELECT MAX(ord_date) FROM sales))
    FROM titles, sales

    6. 将 UPDATE 语句与 SELECT 语句中的 TOP 子句一起使用

    UPDATE AUTHORS
    SET state = 'ZZ'
    FROM
    (
    SELECT
    TOP 10 *
    FROM
    AUTHORS
    ORDER BY
    au_lname
    ) AS t1
    WHERE
    AUTHORS .au_id = t1.au_id

    ————————————————
    版权声明:本文为CSDN博主「bug_yun」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/bug_yun/article/details/84749197

  • 相关阅读:
    C# 文件操作 全收录 追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件....
    FlexPaper在线文档分享(转载)
    winform中屏蔽对标题栏的操作
    【转】海量数据查询优化
    [转帖]用Reflector和FileDisassembler配合反编译.net Windows程序
    关于中缀表达式和逆波兰表达式(终结篇)
    jQuery教程基础篇之强大的选择器(层次选择器)
    模版方法(Template Method)
    VS2008新建项目时出现“此安装不支持该项目类型”
    并行计算相关文章
  • 原文地址:https://www.cnblogs.com/jameswohu/p/14676758.html
Copyright © 2020-2023  润新知