0
我要瘋了這個希望有人能幫助我....MySQL查詢1代表相同的列多次
我有一個表:
user_skils:
ID | UID | SKILL
1 23 House
2 5 Disco
3 8 Punk
... ... ...
... ... ...
... ... ...
現在我正在建立一個搜索查詢在這裏用戶可以搜索和過濾掉不符合條件的人:
示例搜索:迪斯科,朋克,房子
意思,我只是想匹配這個3個指標分析該用戶(有樓AND DISCO和PUNK)... 如何通過查詢來管理這個問題?
喜歡的東西
SELECT count(uid) as matches ,
GROUP_CONCAT(skill) as skills_grouped
FROM user_skilks
WHERE skill LIKE %Disco%
AND skill LIKE %punk%
AND skill LIKE %house%
應該給我這樣的:
Matches | skills_grouped
3 House,Punk,Disco
意思是說3人符合這個標準......
GROUP BY ... HAVING COUNT(*)= 3 - 爲什麼你使用'%'。只需使用IN('Disco','Punk','House') – Strawberry
我將使用選擇列表來輸入skils。否則,當用戶輸入與您的查詢不完全相同時,您將遇到麻煩。例如,「朋克」與「朋克」不匹配等。 –
'朋克'匹配'朋克'! – Strawberry