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

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

mysql - 有張訂單表,假設有個2個手機號,每個手機號都有5個訂單,如何用一個sql實現每個手機號隨機取3個訂單?

瀏覽:119日期:2022-06-22 08:31:46

問題描述

CREATE TABLE `order` ( `order_id` int(11) NOT NULL AUTO_INCREMENT, `phone` bigint(20) NOT NULL DEFAULT ’0’ COMMENT ’手機號’, PRIMARY KEY (`order_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;

有什么可以不用union all的方法嗎,因為這個是我簡化的模型,實際業務中,這個phone的數量可能很多。

SELECT phone, GROUP_CONCAT(order_id ORDER BY rand())FROM `order`WHERE phone IN (11, 22)GROUP BY phone

上面這個方法還是取出了所有數據,GROUP_CONCAT函數不支持limit關鍵字。

問題解答

回答1:

(SELECT `order_id` FROM `order` WHERE `phone`=’$phone1’ LIMIT 3 ORDER BY rand())UNION ALL(SELECT `order_id` FROM `order` WHERE `phone`=’$phone2’ LIMIT 3 ORDER BY rand())

只用SQL完成的話,這樣最簡單,但是 ORDER BY rand() 性能很差。最好就是拿出一定數量的記錄,然后在程序中隨機再選擇三條。

主站蜘蛛池模板: 免看一级a毛片一片成人不卡 | 色黄啪啪18周岁以下禁止观看 | 日韩永久在线观看免费视频 | 午夜性爽视频男人的天堂在线 | 亚洲一在线| 久久免费看视频 | 国产区精品在线 | 国产精品美女一区二区三区 | theav视频在线观看 | 狠狠色丁香婷婷久久综合考虑 | 亚洲精品一区亚洲精品 | 97久久草草超级碰碰碰 | 特级淫片国产免费高清视频 | 国产成人女人在线视频观看 | 免费国产成人高清视频网站 | 狼人久久尹人香蕉尹人 | 亚洲欧美中文字幕在线网站 | 在线观看精品国产 | 国产免费高清在线精品一区 | 亚洲香蕉久久一区二区 | 日本特黄特色大片免费视频网站 | 91成人爽a毛片一区二区 | 日本一级特黄a大片 | 特级毛片 | 欧美日韩加勒比一区二区三区 | 日本一级特黄a大片在线 | 亚洲欧美二区三区久本道 | 国产日韩欧美精品 | 欧美日韩另类综合 | 老司机亚洲精品影院在线 | 成年人黄视频在线观看 | 午夜大片免费男女爽爽影院久久 | 亚洲不卡视频在线观看 | 日韩三级影院 | 免费国产成人高清在线观看不卡 | 欧美一级片手机在线观看 | 玖玖玖精品视频免费播放 | 婷婷丁香花麻豆 | 欧美一级在线播放 | 成人永久福利在线观看不卡 | 免费观看欧美精品成人毛片能看的 |