[SQL ] 如何計算關聯表資料列的數量?
假設一個專案可有多個任務,目前想在檢視專案清單時
同時列出專案底下共有多少任務數量,以及完成的任務數量
雖然可以用程式分次下SQL語法後,再結合統計,但覺得這種事應該
只要下一次SQL就能都查詢出來才對,希望各位先輩給點意見,感謝,=v=
為了方便思考,我把table結構簡化如下:
project(專案)
----------------------
id (int) 資料識別碼
name (varchar) 專案名稱
mission(任務)
----------------------
FK_project (int) 對應的專案
complete (boolean) 是否完成
專案資料(project)
==========================
id name
--------------------------
1 專案1
2 專案2
==========================
任務資料(mission)
==========================
FK_project complete
--------------------------
1 true
1 false
2 true
2 true
2 false
==========================
心中預期結果表(result)
===================================
name completed total
-----------------------------------
專案1 1 2
專案2 2 3
===================================
目前我測試下列的語法:
SELECT p.name,count(*) AS total
FORM project AS p,mission AS m
WHERE p.id = m.FK_project
GROUP BY m.FK_project
可得到結果如下:
======================
name total
----------------------
專案1 2
專案2 3
======================
請問如何計算取得 completed(已完成) 那個欄位數值?
這是我卡住的地方,煩請大家指點...Orz
還有這不是作業=.=|||,只是單純我遇到的問題而已
--
歡迎來我的網誌看看
@ http://doublekai.org/blog
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.240.37.127
推
03/09 12:00, , 1F
03/09 12:00, 1F
推
03/10 19:16, , 2F
03/10 19:16, 2F
推
03/10 19:20, , 3F
03/10 19:20, 3F
→
03/10 22:30, , 4F
03/10 22:30, 4F
→
03/10 22:36, , 5F
03/10 22:36, 5F