Re: [SQL ] 請教這個問題如何下SQL呢?
※ 引述《ylk (YLK)》之銘言:
: ※ 引述《NightPrince (shooting star)》之銘言:
: : ※ 引述《ylk (YLK)》之銘言:
: : : id used time
: : : --------- ------- --------
: : : A 5 13:30
: : : B 5 13:00
: : : C 4 14:00
: : : D 1 12:00
: : : E 0 11:00
: : : 各位前輩好,想請教一下一個SQL問題。
: : : 需求:找到 time 時間最早的資料,不過,如果 used 有 > 0 的,要優先選擇。
: : : 以上列資料表來看,我要選擇的是 資料D。
: : : 想了很久,還是想不出來這個 SQL 要怎麼下,請問有人能幫忙提醒一下嗎?
: : : 謝謝!
: : select * from table where used > 0 order by time asc limit 1;
: 謝謝您的回應。是我沒說明清楚,抱歉。
: 如果 used 有 > 0 的資料,要優先選擇,反之,若沒有 > 0 ,則抓出 = 0 的資料。
: 這一直是我很困惑的部分。
: 再次謝謝您。
關鍵是把{0,{1,2,3,4,5,...}}轉換成{0,1}
SELECT CAST(used AS bit) AS x, MIN([time]) AS t
FROM table
GROUP BY CAST(used AS bit)
ORDER BY x DESC
結果:
x t
1 下午 12:00:00
0 上午 11:00:00
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.184.46
推
06/26 21:23, , 1F
06/26 21:23, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 13 之 13 篇):
Database 近期熱門文章
PTT數位生活區 即時熱門文章