簡體   English   中英

使用count()輸出每月以及每月的總條目

[英]Using count() to output total entries per month as well as the month

我嘗試了一些搜索,結果找到了count()函數使我更接近目標,但又停了一下。 這是我的代碼現在的樣子:

$sql = "SELECT COUNT( * ) as Count
FROM AttendanceDB
WHERE YEAR( class_time ) =  '2015'
AND studentid = '$studentid'
AND furikae = 0
GROUP BY MONTH( class_time )";

然后我用echo $row['Count']; 輸出數據。

這使我可以總計2015年每月的行數,然后輸出答案。 現在,我想做的是輸出每一行中的月份以及總數。 我可以對所有內容進行預格式化,但是有些學生ID會在一年中開始輸入,這意味着前幾個月不會輸出任何結果。

如何同時從數據庫中選擇月份以及同時使用計數功能? 謝謝

您可以使用聚合函數

 $sql = "SELECT COUNT( * ),max(YOUR MONTH COLUMN) as MONTH as Count FROM AttendanceDB WHERE YEAR( class_time ) = '2015' AND studentid = '$studentid' AND furikae = 0 GROUP BY MONTH( class_time )"; 

我認為這對您有幫助:

$sql = "SELECT MONTH( class_time ) AS month, COUNT( * ) as Count
FROM AttendanceDB
WHERE YEAR( class_time ) =  '2015'
AND studentid = '$studentid'
AND furikae = 0
GROUP BY MONTH( class_time )";

怎么樣:

$sql = "SELECT MONTH(class_time) AS m, COUNT(*) AS c
    FROM AttendanceDB WHERE YEAR(class_time) = '2015'
    AND studentid = '$studentid'
    AND furikae = 0
    GROUP BY m";

這樣,您將把月份作為單獨的列,該列還將在結果中顯示為$row['m'] ,而每月計數為$row['c'] (我避免使用與MySQL函數名稱相同的名稱,因此避免使用mc 。)

暫無
暫無

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

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