mysql - 如何以uid為基準(zhǔn)查詢所有一分鐘之內(nèi)有兩條數(shù)據(jù)以上的數(shù)據(jù)
問題描述
如下表
uid order moneytime1 100 10 2016-08-08 12:00:001 101 6 2016-08-08 12:00:582 102 8 2016-08-08 12:02:002 103 10 2016-08-08 12:02:332 104 15 2016-08-08 12:03:003 105 10 2016-08-08 12:03:011 106 10 2016-08-08 12:05:00
根據(jù)題意需要找到的數(shù)據(jù):
uid order moneytime1 100 10 2016-08-08 12:00:001 101 6 2016-08-08 12:00:582 102 8 2016-08-08 12:02:002 103 10 2016-08-08 12:02:332 104 15 2016-08-08 12:03:00
問題解答
回答1:寫法一:
SELECT * FROM table AS aWHERE EXISTS ( SELECT 1 FROM table AS b WHERE a.uid = b.uid AND b.time >= date_sub(now(), INTERVAL 1 minute) GROUP BY b.uid HAVING count(1) > 1);
寫法二:
SELECT * FROM tableWHERE uid IN ( SELECT uid FROM table WHERE time >= date_sub(now(), INTERVAL 1 minute) GROUP BY uid HAVING count(1) > 1);
建議將date_sub(now(), INTERVAL 1 minute)用程序運(yùn)算出來再代替進(jìn)去。
相關(guān)文章:
1. python - 如何正則字符串中的所有漢字2. mysql - 千萬級數(shù)據(jù)的表,添加unique約束,insert會(huì)不會(huì)很慢?3. python - oslo_config4. mysql - 如何減少使用或者不用LEFT JOIN查詢?5. mysql - jdbc的問題6. mysql - eclispe無法打開數(shù)據(jù)庫連接7. mysql 5個(gè)left關(guān)鍵 然后再用搜索條件 幾千條數(shù)據(jù)就會(huì)卡,如何解決呢8. 圖片鏈接的地址怎么獲得的9. mysql - 分庫分表、分區(qū)、讀寫分離 這些都是用在什么場景下 ,會(huì)帶來哪些效率或者其他方面的好處10. 視頻文件不能播放,怎么辦?
