mysql -- order by 排序的疑問
問題描述
麻煩各位看看!!!注意:id是自增長(zhǎng)的
>select * from order order by id desc,create_at asc這句是不是表明create_at這個(gè)字段沒起作用了?或者說(shuō),是不是,只要在id desc之后的字段排序都不起作用??
問題解答
回答1:ORDER BY子句后面列名的順序確定優(yōu)先級(jí)的。即查詢結(jié)果首先以列id的降序順序進(jìn)行排序,而只有當(dāng)列id出現(xiàn)相同的信息時(shí),這些相同的信息再按create_at列的升序進(jìn)行排序
回答2:如果你的ID是唯一的,那么在這種情況下確實(shí)是唯一的,像這種多重排序一般適用于有重復(fù)內(nèi)容的,比如說(shuō)有一群人,里面有重復(fù)的姓名,我們根據(jù)姓名,再根據(jù)年齡來(lái)排序,就是如下效果
李四 20王五 22張三 17張三 18回答3:
不是的,首先對(duì)條件A id desc 排序,然后對(duì)滿足條件A 之后的 條件B create_at asc 排序例如結(jié)果:
id create_at 3 42 12 32 51 11 3
id 自增 你都 1 2 3 4 5 6 7 了,后面的字段自然無(wú)法 排序了
回答4:錯(cuò),當(dāng)id值有重復(fù)時(shí),會(huì)比較create_at的大小排序
相關(guān)文章:
1. javascript - js 對(duì)中文進(jìn)行MD5加密和python結(jié)果不一樣。2. 為什么python中實(shí)例檢查推薦使用isinstance而不是type?3. python - (初學(xué)者)代碼運(yùn)行不起來(lái),求指導(dǎo),謝謝!4. python - django orm 過濾日期為當(dāng)天日期的數(shù)據(jù)5. nginx - pip install python庫(kù)報(bào)錯(cuò)6. python - 如何判斷字符串為企業(yè)注冊(cè)名稱7. mysql里的大表用mycat做水平拆分,是不是要先手動(dòng)分好,再配置mycat8. python的文件讀寫問題?9. window下mysql中文亂碼怎么解決??10. mysql如何添加索引的時(shí)候指定索引方式
