case when 批量条件处理 分类: database 2014-03-07 13:05 286人阅读 评论(0) 收藏

Case具有两种格式。简单Case函数和Case搜索函数。

--简单Case函数

CASE sex

         WHEN '1' THEN ''

         WHEN '2' THEN ''

ELSE '其他' END

--Case搜索函数

CASE WHEN sex = '1' THEN ''

         WHENsex = '2' THEN ''

ELSE '其他' END


如果是满足判断条件:

UPDATE 表名 SET 字段1= CASE WHEN 条件1 THEN 1 ELSE 0 END, 字段2= CASE WHEN 条件2 THEN 0 ELSE 1 END


如:


27岁以上的学生 sex修改为M,20-25岁,sex修改为F,其他的修改为O


sql="""update stuinfo set sex= case when age>=27 then 'M'
when 20<age and age<25 then 'F'
else 'O'
end

"""

import MySQLdb

conn=MySQLdb.connect("localhost","root","root")

conn.select_db("stu")

cur = conn.cursor()

cur.execute(sql)

conn.commit()

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/think1988/p/4627929.html