作者b60413 (None)
看板Database
標題[SQL ] 多欄位資料排序
時間Wed Jul 11 16:10:39 2012
我有一個Table資料如下
id d_time num
1 2011-04-06 15:56:54 70
2 2012-07-11 15:56:54 65
3 2012-07-11 15:57:28 60
我想要讓資料表依照d_time排序後,再排序num
依照我的想法應該是可以排成下列才是
id d_time num
2 2012-07-11 15:56:54 65
3 2012-07-11 15:57:28 60
1 2011-04-06 15:56:54 70
可是我排完之後,順序總是不正確,如下表
id d_time num
3 2012-07-11 15:57:28 60
2 2012-07-11 15:56:54 65
1 2011-04-06 15:56:54 70
我想要請問一下要怎樣才能排成我想要的方式?
目前使用的SQL語法為
SELECT * FROM test2 order by d_time desc,num desc
請幫忙修正一下,謝謝
--
http://www.myspace.com/soundtrack0220
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.10.32
→ bluepromise:你是要同一天的時間小的先排?不同天又要日期大的先?? 07/11 19:55
推 twoseven:你的時間排序包含到秒? 還是只想要到日 07/11 20:03
推 bluepromise:SELECT * FROM test2 order by 07/11 20:10
→ bluepromise:Convert(varchar(10),d_time,111) desc,num desc 07/11 20:11
→ bluepromise:可以試試看是不是你要的... 07/11 20:12
→ b60413:我想讓num由大排到小 但是日期需要由近排到遠 07/12 09:28
→ b60413:後來我想了一下我的需求,我把語法修正如下 07/12 09:28
→ b60413:SELECT * FROM `test2` WHERE 07/12 09:29
→ b60413:TIMESTAMPDIFF(day,d_time,CURRENT_TIMESTAMP) < 45 07/12 09:29
→ b60413:ORDER BY num desc 07/12 09:29
→ b60413:謝謝各位的回應! 07/12 09:30