我需要合併3個求和查詢的結果並在循環中回顯結果。我被困在如何以正確的方式完成。我想使用while循環爲每個客戶端回顯一行,顯示按客戶端名稱分組的3個總和查詢的結果:使用聯合或聯接在where語句中使用多個查詢結果
客戶端名稱|總到期|現金銷售總額|信用銷售總額
結果顯示全部歸因於客戶。 noncashresult顯示所有由於信用銷售客戶。 cashresult顯示所有由於客戶從現金銷售。
$result = mysql_query("SELECT `client_name` As `Client`, SUM(`due_to_client`) As `Total Due`
FROM `Consignment`
WHERE `payout_approved` = 'Yes'
GROUP BY `client_name`");
$noncashresult = mysql_query("SELECT `client_name` As `Client`, SUM(`due_to_client`) As `Credit Total Due`
FROM `Consignment`
WHERE `payout_approved` = 'Yes' AND `paymenttype` IN ('Credit')
GROUP BY `client_name`");
$cashresult = mysql_query("SELECT `client_name` As `Client`, SUM(`due_to_client`) As `Cash Total Due`
FROM `Consignment`
WHERE `payout_approved` = 'Yes' AND `paymenttype` IN ('Cash')
GROUP BY `client_name`");
while($row = mysql_fetch_array($result))
{
echo $row['Client'];
echo $row['Total Due'];
echo $row['Credit Total Due'];
echo $row['Cash Total Due'];
}
嗨克雷格,如果是我,我會收集每個查詢的結果到客戶端組織的數組。然後,您可以在循環訪問數組時循環打印每個客戶端信息。 我錯過了什麼嗎? 或者,您可能可以在每個查詢之間使用UNION並獲得所需內容(除非UNION需要每列的別名相同,否則可能會導致您的結果難以理解/保留每個結果的含義)。 – MER