Re: [SQL ] 怎麼找出大於某數的資料

看板Database作者 (Daniel Guo)時間14年前 (2011/06/09 06:06), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/3 (看更多)
※ 引述《knives ()》之銘言: : 我用的DBMS是 Mysql : 我的table 有一個記錄登入的ip的欄位lastloginip 跟該用戶的uid : 我想要用下面的sql找出,同一個ip,被多少的用戶登入 : SELECT DISTINCT lastloginip ,s.uid,count(s.uid) as sc FROM `space` s : GROUP BY lastloginip : ORDER BY sc desc : 這樣的確是可行 : 但是我現在如果想要找出 sc > n 也就是用一個ip被n個以上的用戶登入 : 我本來以為 直接用subquery : WHERE (SELECT count(s.uid) sc FROM `space` s GROUP BY lastloginip ) > 1 : 可是會有 Subquery returns more than 1 row 的錯誤 : 請問該怎麼下才對 : 謝謝回答 用 HAVING 便可. 另外原先的 SQL 中用 GROUP BY lastloginip 便不需要 SELECT DISTINCT SELECT s.`lastloginip`, s.`uid`, COUNT(s.`uid`) AS `sc` FROM `space` s GROUP BY s.`lastloginip` HAVING `sc` > 1 ORDER BY `sc` DESC -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 71.107.127.201

06/10 08:28, , 1F
原來如此,感恩
06/10 08:28, 1F
文章代碼(AID): #1Dx_A1U- (Database)
文章代碼(AID): #1Dx_A1U- (Database)