簡體   English   中英

按日期排序並按ID分組

[英]Order by date and group by id

我在events_table有一個事件列表,我以yyyy-mm-dd格式存儲事件的日期。 我需要按日期對事件進行排序:

(SELECT * from events_table ORDER BY date DESC)

但是,如果我在相似的日期有1個以上的事件,則排序錯誤。 我想按日期和ID排序,以查看正確的順序(首先是新事件)。
我知道良好的做法是使用timestamp ,但是由於用戶可以介紹有關一兩天前發生的事件的信息,因此這種方法不適用於我的情況。

您可以按多個字段訂購。

SELECT * from events_table ORDER BY date DESC, id;

如果您要按日期先降序,然后按ID升序,請在下面使用-

SELECT * from events_table ORDER BY date DESC, id ASC;

如果您要按日期先降序,然后按ID先降序,請在下面使用-

SELECT * from events_table ORDER BY date DESC, id Desc;

如果id是主鍵和auto_increment,則無需使用日期排序,因為id上的排序就足夠了,並且會得到更好的優化。

SELECT * from events_table ORDER BY id Desc;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM