[討論] AS用法

作者: CPU100 (小丑)   2020-01-09 02:15:03
各位好,目前正在自學SQL,看到AS的部分,腦袋開始打結
想請問一下這樣的範例
https://pic3.zhimg.com/80/v2-684a3eda237fd615dbce5c762576f872_hd.jpg
select table.*, (case
when score >= 60 then "pass"
else "fail") as mark
from table;
這個table.* (條件) as mark ,有沒有白話一點的理解方式呢?
現在一直認為 as 就是把本來欄位重新命名
那為什麼這樣做之後,會多一欄mark呢?
麻煩前輩解答,拜託,謝謝。
作者: criky (2501-2)   2020-01-09 05:01:00
as 是欄位命名沒錯,原sql不寫as還是會多一欄table.*有3欄位,再加case就多一欄
作者: mathrew (Joey)   2020-01-09 06:12:00
你就把它想成是另存成一個欄位就好了你開 word excel notepad 等... 軟體 另存檔案也都叫 as
作者: funk6478 (大恩)   2020-01-09 10:42:00
CASE是依你的條件弄一個新欄位出來 AS只是幫這欄位命名不過CASE通常會用END去命名欄位
作者: konkonchou (卡卡貓)   2020-01-09 14:08:00
T-SQL 的 AS 可視為 alias 別名的意思,所以可以Select A as [B] 欄位,也可以Select A [B]
作者: ken218 (ken218)   2020-01-11 17:27:00
不同意 f大 說的。第一,case 不只在 select 可以用,where 甚至 group by 裡面都可以。第二,end 是 case 的結尾,不可缺少。as 不論在什麼情況下都是可以省略的。

Links booklink

Contact Us: admin [ a t ] ucptt.com