日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sql语句中case when和as用法

發布時間:2023/12/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql语句中case when和as用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在sql語句里case when then else end可以當做c語言中switch case一樣是分支語句,起到不同條件處理作用。而as相當于一個別名,可以給某個列或者某個表起新的名字。

比如這里有個employee表,

select * from employee;
+----+--------+-----+---------+
| id | name ? | age | dept_id |
+----+--------+-----+---------+
| ?1 | 張偉 ? | ?30 | ? ? ? 1 |
| ?2 | 劉紅 ? | ?20 | ? ? ? 3 |
| ?3 | 劉明智 | ?33 | ? ? ? 5 |
| ?4 | 陳靜 ? | ?44 | ? ? ? 2 |
| ?6 | 劉鳳飛 | ?59 | ? ? ? 4 |
| ?7 | andy ? | ?38 | ? ? ? 1 |
| ?8 | baby ? | ?38 | ? ? ? 6 |
| 11 | 李剛 ? | ?48 | ? ? ? 3 |
| 14 | 小明 ? | ?55 | ? ? ? 5 |
| 16 | 王晨鍵 | ?35 | ? ? ? 6 |
+----+--------+-----+---------+
10 rows in set

select id as 編號,name as 姓名,case when age>50 then '該退休了' when age>30 then '大齡' else '年輕' end as 年齡 from employee;
+------+--------+----------+
| 編號 | 姓名 ? | 年齡 ? ? |
+------+--------+----------+
| ? ?7 | andy ? | 大齡 ? ? |
| ? ?8 | baby ? | 大齡 ? ? |
| ? ?6 | 劉鳳飛 | 該退休了 |
| ? ?3 | 劉明智 | 大齡 ? ? |
| ? ?2 | 劉紅 ? | 年輕 ? ? |
| ? 14 | 小明 ? | 該退休了 |
| ? ?1 | 張偉 ? | 年輕 ? ? |
| ? 11 | 李剛 ? | 大齡 ? ? |
| ? 16 | 王晨鍵 | 大齡 ? ? |
| ? ?4 | 陳靜 ? | 大齡 ? ? |
+------+--------+----------+
10 rows in set

看到了吧,這樣就把表里id命名為編號,name命名為姓名,age命名為年齡,而age里根據不同的字段值,又分別賦值。

as還可以用到新表復制,比如:create table test as select * from table1

這時候就會create 一個table test,他是完全copy 表table1里的全部數據。

總結

以上是生活随笔為你收集整理的sql语句中case when和as用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。