[英]how to sort “GROUP BY” query result by Frequent values?
我編寫了 php 應用程序,它獲取用戶瀏覽器的名稱:
+----------+------------+
| name | browser |
+----------+------------+
| Puffball | firefox |
| Chirpy | edge |
| Whistler | chrome |
| Slim | firefox |
| Claws | edge |
| Fluffy | chrome |
| Fang | chrome |
| Bowser | safari |
| Buffy | chrome |
+----------+------------+
我使用這個 sql 查詢來獲取帶有“GROUP BY”的瀏覽器,結果是:
$sql = "SELECT * FROM views WHERE linkid = '$string' GROUP BY browser";
array (size=4)
0 => string 'firefox'
1 => string 'edge'
2 => string 'chrome'
3 => string 'safari'
我想按頻率值對此結果進行排序,如下所示:
array (size=4)
0 => string 'chrome'
1 => string 'edge'
2 => string 'firefox'
3 => string 'safari'
坦克斯!
為了獲得按瀏覽器在輸入表中提到的頻率排序的結果,您需要添加這樣的計數,然后按計數列進行排序
SELECT *, count(browser) as frequency
FROM views
WHERE linkid = '$string'
GROUP BY browser
ORDER by frequency
在 Sql 查詢下面使用這個
SELECT * FROM `table` group by browser order by browser asc
使用 PHP 數組排序
排序($瀏覽器);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.