色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

mysql group排序問題

瀏覽:156日期:2022-06-20 14:50:59

問題描述

表結構:

ordreridcontentcreated_at13time-11aaatime-2

select * from table group by orderid order by created_at desc得出的結果居然是 1|3|time-1 time2大于time1

問題解答

回答1:

因為oracle是倒著分析你的sql語句的。select * from table group by created_at, orderid order by created_at desc

order by 中列,應該出現在group by 子句中。created_at同時放在group by中,且created_at要放在orderid前面。

回答2:

說實話我都懷疑你的sql是否能夠執行,select * from table group by orderid應該是不能執行的,select后面的字段必須和group by后面的字段一致。如果你這段SQL確實能夠執行,那么我猜可能是因為你寫的并不符合語法規則導致order by并沒有起到排序的作用

上面說的這個是針對oracle的,Mysql確實是能夠執行的(注意:這種SQL是不標準的)

原理如下:Mysql在執行這段代碼的時候會檢查orderid是不是主鍵或者唯一非空索引,如果不是的話就會從orderid相同的行里面任意找一條數據出來了(因為你這里查詢用的是*而不是orderid,跟group by后不一致),既然是任意的數據那么里的order by是無效的

相關文章:
主站蜘蛛池模板: 综合刺激网| 欧美成人高清手机在线视频 | 91成人免费观看 | 国产精品福利午夜一级毛片 | 国产精品免费看 | 免费国产成人综合 | 成人中文字幕在线观看 | 欧美成人免费高清网站 | 国产精品国产精品国产三级普 | 国产成人精品福利网站人 | 国产日本欧美亚洲精品视 | 成人ab片| 91久国产在线观看 | 自拍在线视频 | 久久一本一区二区三区 | 国产美女精品视频 | 国产在线精品一区二区高清不卡 | 中国性猛交xxxxx免费看 | 国产伦精品一区二区三区四区 | 午夜在线精品不卡国产 | 久久厕所| 国产一级强片在线观看 | 久草新免费| 美女网站视频黄色 | 日本道在线播放 | 国产在线黄| 精品国产理论在线观看不卡 | 国产日本欧美高清免费区 | 亚洲视频国产精品 | 欧美另类久久久精品 | 91精品国产91热久久久久福利 | 在线观看视频一区 | 亚洲加勒比久久88色综合 | 国产日韩欧美精品 | 综合久色 | 国产在线精品观看一区 | 欧美一级级毛片 | 国产免费高清福利拍拍拍 | 精品国产乱码久久久久久一区二区 | 国产亚洲一级精品久久 | 欧美日本综合一区二区三区 |