給定乙個 salary 表,如下所示,有 m = 男性 和 f = 女性 的值。交換所有的 f 和 m 值(例如,將所有 f 值更改為 m,反之亦然)。要求只使用乙個更新(update)語句,並且沒有中間的臨時表。
注意,您必只能寫乙個 update 語句,請不要編寫任何 select 語句。例如:
idname
***salary1a
m25002b
f15003c
m55004d
f500
執行你所編寫的更新語句之後,將會得到以下表:
idname
***salary1a
f25002b
m15003c
f55004d
m500
①case when
一旦滿足了某乙個when, 則這一條資料就會退出case when , 不再考慮其他case
即case函式只返回第乙個符合條件的值,剩下的case部分將會被自動忽略.
②if(a,b,c)
if判斷,如果a滿足條件,返回b,否則返回c
③ascii(string) :將字串的第乙個字元轉換成ascii碼的形式
char(int) :將ascii碼轉換成字元
char(ascii(col_num)+1)#將字元順延一位
1.case when 匹配
2.if函式篩選
3.ascii轉化
update salary
set *** =
(case *** when
'm'then
'f'else
'm'end
);
update salary set *** =
if(***=
'm',
'f',
'm')
;
update salary set *** =
char
(ascii(
'm')
+ ascii(
'f')
- ascii(***)
);
SQL每日刷題 變數定義
編寫乙個 sql 查詢,來查詢與之前 昨天的 日期相比溫度更高的所有日期的 id 查詢結果格式如下例 weather id recorddate temperature 1 2015 01 01 10 2 2015 01 02 25 3 2015 01 03 20 4 2015 01 04 30 r...
SQL每日刷題 異或 交換奇偶
小美是一所中學的資訊科技老師,她有一張 seat 座位表,平時用來儲存學生名字和與他們相對應的座位 id。其中縱列的 id 是連續遞增的 小美想改變相鄰倆學生的座位。你能不能幫她寫乙個 sql query 來輸出小美想要的結果呢?示例 id student 1 abbot 2 doris 3 eme...
sql 條件判斷
case具有兩種格式。分支結構case語句和條件判斷case語句。分支結構case語句,類似於switch select case user name when 張三 then zhangsan when 李四 then lisi when 王五1 then wangwu else 找不到對應 en...