我想在分離group_status 1和2的數量時獲取數量值時出現問題。是否使用Alias和Union設置數量只顯示第一個查詢。 Fyi,我嘗試過使用雙左連接,並將表設置爲'a'和'b',但它也不起作用。歡迎任何幫助或解決方案。謝謝!具有union/join和同一列上的兩個別名的MySQL
下面是我需要的表格和查詢結果。
$一個//開始日期 $ B //結束日期
查詢:
"SELECT items.item_name, requesters.item_version, requesters.quantity AS 'approved'
FROM requesters
JOIN items ON items.item_id=requesters.item_id
WHERE requesters.requested_date >= '$a' AND requesters.requested_date <='$b'
AND group_status =1
UNION ALL
SELECT items.item_name, requesters.item_version, requesters.quantity AS notapproved
FROM requesters
JOIN items ON items.item_id=requesters.item_id
WHERE requesters.requested_date >= '$a' AND requesters.requested_date <='$b'
AND group_status =2";
請求者:
------ --------- ------------- --------------- ------------- -------------
| id | item_id| item_version| requested_date| quantity| group_status|
------ --------- ------------- --------------- ------------- -------------
| 1 | 2 | 2013 | 2016-01-01 | 100 | 1 |
| 2 | 2 | 2013 | 2016-01-12 | 200 | 2 |
| 3 | 3 | 2007 | 2016-02-04 | 300 | 2 |
| 4 | 3 | 2010 | 2016-03-25 | 400 | 1 |
------ -------- ------------- --------------- ------------- -------------
項目:
------ -------- -------------
| id | item_id| item_name|
------ -------- -------------
| 1 | 1 | Ms Office|
| 1 | 2 | Ms Visio Pro|
| 2 | 3 | Ms Visio Std|
------ -------- -------------
狀態:
------ ---------- -------------
| id | status_id| status_name|
------ ---------- -------------
| 1 | 1 | Approved |
| 2 | 2 | Not Approved|
------ ---------- -------------
查詢結果的實施例:
日期:2016-01-01 to 2016-01-31
------------- -------------- ------------- ------------- -------------
| item_name | item_version| Approved | Not Approved| Total|
------------- -------------- ------------- ------------- -------------
| Ms Visio Pro| 2013 | 100 | 200 | 300 |
| Ms Visio Std| 2007 | 0 | 300 | 300 |
| Ms Visio Std| 2010 | 400 | 0 | 400 |
------------ -------------- ------------- ------------- -------------
請修復這個問題的標籤。它不應該有PHP標籤。 – ryantxr