2014-10-04 24 views
-4

嗨我有一個搜索引擎,用戶可以搜索不同的名稱。 表格的名稱是「searled_names」,我想回復大多數搜索到的前6個名字。例如,桌子上有十個人叫亞歷克斯,約翰和彼得一世,我希望它能像這樣迴應。PHP的Mysql - 我如何選擇前6個結果

Alex 
John 
Peter 


SELECT * FROM names WHERE ... guess I'll use COUNT() somewhere 
+0

您需要2個加法SQL命令。 ORDER BY count ... DESC LIMIT 6 – jeff 2014-10-04 00:27:46

+0

LIMIT 6結束。 – 2014-10-04 00:28:06

+1

你怎麼知道什麼是最受歡迎的搜索? 「名稱」表中是否有一列,是否有與該信息不同的表? – user2910265 2014-10-04 00:34:52

回答

3

使用ORDER BYLIMIT

SELECT * 
FROM names 
WHERE ... 
GROUP BY name 
ORDER BY COUNT(*) DESC 
LIMIT 6 
0

,他希望ordered by most searched.

SELECT * FROM names 
ORDER BY col_containing_nb_of_search 
limit 6