好吧,我有一個表是這樣的:我可以使用單個SQL查詢來做到這一點嗎?
id query results ip
---------------------------------
1 milk 17 10.10.10.1
2 milk 17 10.10.10.1
3 milk 17 10.10.10.2
4 bread 8 10.10.10.2
5 bread 8 10.10.10.2
6 cheese 12 10.10.10.1
我有這個疑問現在:
SELECT COUNT(DISTINCT(id)) as cnt, query, results, ip
FROM table
GROUP BY query
ORDER BY results ASC
LIMIT 20
該查詢返回的結果:
count query results
---------------------
2 bread 8
1 cheese 12
3 milk 17
我需要擴大在那個查詢上(或者完全重做)來返回類似這樣的內容,最好使用嵌套數組中的IP作爲查詢數組的一部分:
query count results ip
--------------------------------
bread 2 8 10.10.10.2 (2)
cheese 1 12 10.10.10.1 (1)
milk 3 17 10.10.10.1 (2)
10.10.10.2 (1)
我會輸出這與PHP,將IP列表與該計數附加到查詢計數顯示(點擊以顯示/隱藏模式與信息填充)。
任何方向或幫助獲取我需要的數據將是美好的!
你的意思是'DISTINCT'對嗎? :-) –
期望的結果集違反1NF。您可能想要考慮更好的查詢方式。 –
可能[SQL加入自己](http://www.w3resource.com/sql/joins/join-a-table-to-itself.php)? – Vidul