目標:查找所有行,其中(1)數字的消息數爲1,並且(2)消息的長度小於5個字符長度。我可以分別執行每個操作,但在將一個SQL查詢中的兩個條件組合在一起時遇到困難。按照where子句分組計數等於1
Sample Database Table:
+-----+----------+----------+
| id | number | message |
+-----+----------+----------+
| 1 | 100 | Test |
| 2 | 100 | Testing |
| 3 | 100 | Testing |
| 4 | 200 | Test |
| 5 | 201 | Test |
| 6 | 201 | Test |
| 7 | 250 | Testing |
| 8 | 251 | Test |
| 9 | 300 | Testing |
| 10 | 300 | Testing |
+-----+----------+----------+
應該只返回行200和251試過以下,但沒有運氣:
SELECT * FROM `reports` WHERE LENGTH(message) < 5 GROUP BY number HAVING count(*) = '1'
返回行,但行包含計數> 1
[您的查詢](http://www.sqlfiddle.com/#!2/9221b/2)效果很好。怎麼了 ? –
SQL查詢中的錯字。我編輯應該是5而不是60的長度。 –
你看了演示?它很好,最新怎麼了? –