2017-04-16 30 views
0

enter image description here我有一個問題,我無法弄清楚有多少人在網站上填寫了表格,從來沒有爲班級付款。使用MYSQL計算有多少人從未爲班級付款

有很多班,有時候同一個人填寫表格,然後不付錢。後來他們付了另一堂課。

如何消除爲其中一個班級付費的人員。

下面是我用來顯示重複的查詢。

SELECT GROUP_CONCAT(id) id, Name, GROUP_CONCAT(Class_Code) Classes, GROUP_CONCAT(Payment_Complete) Paid, COUNT(*) c FROM studentDetails GROUP BY Name HAVING c > 1 
+0

請分享架構 –

+0

我該怎麼做? – Layers

+0

付款細節不應該在學生表中。你應該創建一個單獨的表,用於支付學生證號,班級ID,支付日期,支付金額等。 – Mike

回答

-1

採取的狀態和統計數據庫表列中,將顯示付費狀態或無償狀態 像

$query = "select * from table_name where status= 'paid'"; 
    $st = $connection->prepare($query); 
    $st->excute(); 
    $result = $st->fetchAll(); 
    $connection = null; 

然後檢查每次如果狀態是支付更新它與增加計數空與客戶支付的狀態服務的每個受影響的行更新

+0

呃,沒有。這不是一個好計劃。 – Strawberry

+0

請推薦一個更好的! – Layers

+0

@Strawberry,但它的簡單和時間複雜性也是可控的 –