簡體   English   中英

使用MySQL和PHP計算字段中每個值的數量

[英]Count how many of each value from a field with MySQL and PHP

我已經多次看過這個問題,但我找不到如何顯示結果。 我有一個電影數據庫,我希望在一個MySQL查詢的頂級菜單中計算每種類型的電影,所以我的菜單會顯示如下:

Total Movies (300)
Drama (50)
Comedy (75)
Thriller (30)
...and so on...

我在這個站點上發現了一些MySQL查詢,但沒有人指定如何處理SQL查詢后的計數。 像這樣的東西可能會起作用:

select genre, count(*) from movies group by genre

但是如何在之后顯示每個值的計數? 非常感謝你!

別名計數部分,以便您可以輕松訪問列名:

SELECT genre, count(*) AS nb_movies FROM movies GROUP BY genre

然后你可以像$row['nb_movies']一樣訪問它。

如果沒有別名,聚合列將獲取生成它的聚合函數調用的名稱,因此在您的情況下,它將像$row['count(*)']一樣被訪問。

嘗試

select genre, count(*) AS total from movies group by genre

使用總數作為例如。

echo $result['total'];

試試這個,

SELECT genre, count(*) AS total_genre_movies FROM movies GROUP BY genre

現在您可以訪問$result['total_genre_movies']

如果別名計數結果(*)會更容易

select genre, 
       count(*) as total
  from movies 
 group by genre

然后,當您將結果提取到$row ,您可以將其作為$row['total']訪問,其方式與引用$row['genre']完全相同

   select genre, count(*) as genre_count from movies group by genre

現在您可以訪問$ result ['genre_count']

試試這個,

$result = mysql_query("select genre, count(*) as genre_count from movies group by genre");

while($row = mysql_fetch_array($result)) {

   $genre       = $row['genre'];
   $genre_count = $row['genre_count'];

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM