[SQL ] Leetcode初階線上題目求解

看板Database (資料庫)作者 (^^)時間3年前 (2022/01/06 23:21), 編輯推噓3(3012)
留言15則, 3人參與, 3年前最新討論串1/1
https://i.imgur.com/1Uv74Sp.jpg
請問以上畫面這題:Reformat Department Table 不懂為什麼用max(case..)可以處理 看討論區 也有人用sum(case…)也可以成功跑出結果 更不明白了… 麻煩好心人解惑 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.39.91 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1641482513.A.292.html

01/06 23:30, 3年前 , 1F
Select (case when month = 'Jan' ... end)
01/06 23:30, 1F

01/06 23:31, 3年前 , 2F
From department Where id=1; 想想這條會輸出什麼表?
01/06 23:31, 2F

01/06 23:31, 3年前 , 3F
max 或 sum 函數會作用在上述式子得到的表的那一欄中
01/06 23:31, 3F

01/06 23:32, 3年前 , 4F
不過重點是這一欄, 考慮進題目敘述的話它應該會有一個特性
01/06 23:32, 4F

01/06 23:33, 3年前 , 5F
這樣你就能知道為什麼用 max 或 sum 可以把這個特性抓出來
01/06 23:33, 5F

01/08 15:45, 3年前 , 6F
因為每個月, 每個Id 只會出現一次,所以其實 max、sim、
01/08 15:45, 6F

01/08 15:45, 3年前 , 7F
甚至 min 都有一樣的效果。但是這個不是應該用 pivot 比
01/08 15:45, 7F

01/08 15:45, 3年前 , 8F
較好嗎?
01/08 15:45, 8F

01/10 02:06, 3年前 , 9F
明白了 謝謝兩位前輩指點
01/10 02:06, 9F

01/10 02:08, 3年前 , 10F
對 應該pivot比較好 但有看到討論區是這解法 好奇思
01/10 02:08, 10F

01/10 02:08, 3年前 , 11F
01/10 02:08, 11F

01/10 02:08, 3年前 , 12F
總之非常感謝兩位
01/10 02:08, 12F

01/11 08:17, 3年前 , 13F
如果要快速刷題,可以最快解出來的方法就是最佳解,所以
01/11 08:17, 13F

01/11 08:17, 3年前 , 14F
沒有使用 pivot 吧。另外,會不會是因為不同數據庫系統間
01/11 08:17, 14F

01/11 08:17, 3年前 , 15F
的語法不同?
01/11 08:17, 15F
文章代碼(AID): #1XrmaHAI (Database)
文章代碼(AID): #1XrmaHAI (Database)