SQL语句集锦

来源:互联网 发布:即时通讯软件源码 编辑:程序博客网 时间:2024/06/07 06:41

       本文章主要写的是我自己在工作中使用到的十分有用的SQL语句,为防止遗忘故特将写此文章记录下来,后续文章的内容将不断的更新、完善。

     1.批量更新SQL

   UPDATE categories 

      SET display_order = CASE id 
        WHEN '
id1 'THEN 'value1 '

        WHEN 'id2 'THEN 'value2'

        WHEN 'id3 'THEN 'value3'

        END
 WHERE id IN (id1,id2,id3)

这句sql的意思是,更新display_order 字段,如果id=id1 则display_order 的值为value1,如果id=id2 则 display_order 的值为value2,如果id=value3 则 display_order 的值为value3。
即是将条件语句写在了一起。这里的where部分不影响代码的执行,但是会提高sql执行的效率。确保sql语句仅执行需要修改的行数,这里只有3条数据进行更新,而where子句确保只有3行数据执行。

 UPDATE categories 

SET display_order = CASE id 
        WHEN 'id1 'THEN 'value1 '

        WHEN 'id2 'THEN 'value2'

        WHEN 'id3 'THEN 'value3'

        END,

SET title = CASE id 
        WHEN 'id1 'THEN 'value1 '

        WHEN 'id2 'THEN 'value2'

        WHEN 'id3 'THEN 'value3'

        END

 WHERE id IN (id1,id2,id3)