case when 批量條件處理

2021-06-20 20:15:16 字數 805 閱讀 4007

case具有兩種格式。簡單case函式和case搜尋函式。

--簡單

case函式

case ***

when

'1'then'男

' when

'2'then'女

' else'其他

'end

--case

搜尋函式

case

when *** =

'1'then'男

' when*** =

'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歲以上的學生 ***修改為m,20-25歲,***修改為f,其他的修改為o

sql="""update stuinfo set ***= case when age>=27 then 'm'

when 20

"""import mysqldb

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

conn.select_db("stu")

cur = conn.cursor()

cur.execute(sql)

conn.commit()

MySQL條件表示式case when查詢

先建立一張這樣的一張表user表 再建立一張成績表 需求是查詢到學生各科的成績,並劃分級別。成績大於等於60小於80屬於及格,成績大於80優秀,小於60為不及格 select u.user class as 班級 u.user number as 學號 u.user name as 姓名 s.sub...

關於CASE WHEN的多條件彙總問題

問題 建立測試表 if exists select from sys.objects where object id object id n dbo tb and type in n u drop table dbo tb1 gocreate table dbo tb1 卡狀態 nvarchar 2...

巧用case when 解決多條件模糊查詢問題

我們在進行專案開發中,經常會遇到多條件模糊查詢的需求。對此,我們常見的解決方案有兩種 一是在程式端拼接sql字串,根據是否選擇了某個條件,構造相應的sql字串 二是在資料庫的儲存過程中使用動態的sql語句。其本質也是拼接sql字串,不過是從程式端轉移到資料庫端而已。這兩種方式的缺點是顯而易見的 一是...