我有一個複雜的查詢組成的大量的內部和左連接,我試圖使用SQL的COUNT函數返回某個表中的記錄數。試圖將計數函數添加到一個複雜的查詢PHP MYSQL
我正在嘗試使用proposal_id獲取每個提案的'held_proposals'表中的記錄數,因爲我將使用foreach循環將數據輸出到表中。
從本質上講,我想說明有多少學生對每個提案「舉行」提案。
這是我的嘗試:
SELECT p.proposal_id, p.proposal_title, p.description, u.user_record_id, u.forename, u.surname, c.course_title, h.*,
GROUP_CONCAT(DISTINCT t.tag_title) AS tags FROM proposal p
LEFT JOIN user u on u.user_record_id = p.user_record_id
LEFT JOIN course_details c on c.course_code = p.course_code
LEFT JOIN record r on r.proposal_id = p.proposal_id
LEFT JOIN proposal_tags pt on pt.proposal_id = p.proposal_id
LEFT JOIN tag_details t on t.tag_code = pt.tag_code
LEFT JOIN (
SELECT h.student_record_id, COUNT(*) AS Held
FROM held_proposals h
) H on h.proposal_id = p.proposal_id
WHERE p.source = "Supervisor"
AND (r.status_code not in (3,8) OR r.status_code IS NULL)
GROUP BY p.proposal_id;
表目前看起來是這樣的:
我想補充從「held_proposals」表中返回每個建議值表格的結尾作爲另一列。
請問我可以提供一些關於如何在SQL查詢中實現這一點的指導。先謝謝你。
使用加入一些以此爲指導的查詢中的計數:http://stackoverflow.com/a/1382618/1662973 –
之間是什麼關係'held_proposals'和你選擇的其他表格? –
舉行的提案只包含兩個外鍵。一個用於將其鏈接到提案表的提案ID以及一個將其鏈接到用戶表以表明哪個用戶已經提交提案的student_record_id :) – user610