次のデータを持つMySQLテーブルがあります。
surveyid | staff | username | ipaddress | rating | comments
---------|--------|----------|-----------|---------|----------
0 | staff1 | user1 | 1.1.1.1 | 10 | none
1 | staff2 | user2 | 1.2.1.1 | 5 | none
2 | staff2 | user3 | 1.2.1.1 | 10 | none
3 | staff2 | user2 | 1.2.1.1 | 6 | none
4 | staff3 | user4 | 1.1.1.51 | 10 | none
5 | staff4 | user3 | 1.21.12.1 | 9 | none
6 | staff5 | user2 | 1.12.1.1 | 10 | none
IPアドレスが同じスタッフの複数のユーザーに使用されている場合にのみ、調査ID、スタッフ、ユーザー名、およびIPアドレスを選択するクエリが必要です。
基本的に、複数のユーザーが同じIPアドレスから送信したスタッフを見つけたいと思っています。
以下を試してみましたが、うまくいきません。
SELECT * FROM `comment_data` CD
INNER JOIN
(SELECT `ipaddress`, COUNT(DISTINCT `staff`)
FROM `comment_data` GROUP BY `ipaddress` HAVING COUNT(DISTINCT `staff`) > 1 )
USECOUNT ON USECOUNT.`ipaddress` = CD.`ipaddress`
次のクエリも試しました。
SELECT * FROM `commend_data` WHERE `staff`+`ipaddress` IN
(SELECT `staff`+`ipaddress` FROM `comment_data` GROUP BY `staff`, `ipaddress`
HAVING COUNT(`surveyid`) > 1)
また、すべての重複を確実に表示したいのですが、カウントだけを表示したくありません。
さらに情報が必要な場合は、お問い合わせください。
ありがとうポール