我正在開發一個基於Web的報表系統,作爲一個使用MySQL和PHP的學校項目。這是我的數據庫的樣子。MySQL - 項目總和問題
+-----------------------------------------------+
| Bill |
|-----------------------------------------------|
| BillID (pk) | BillDate | AccID (fk) |
|---------------|---------------|---------------|
| 1 | xxxx-xx-xx | 1 |
| 2 | xxxx-xx-xx | 2 |
+---------------+---------------+---------------+
+---------------------------------------------------------------+
| BillItem |
|---------------------------------------------------------------|
|BillItemID (pk)| Quantity | BillID (fk) |ProductID (fk) |
|---------------|---------------|---------------|---------------|
| 1 | 10 | 1 | 1 |
| 2 | 10 | 1 | 2 |
| 3 | 10 2 | 2 |
+---------------+---------------+---------------+---------------+
+-----------------------------------------------+
| Product |
|-----------------------------------------------|
| ProductID(pk) | ProductName | Price |
|---------------|---------------|---------------|
| 1 | Product1 | XX |
| 2 | Product2 | XX |
| 3 | Product3 | XX |
+---------------+---------------+---------------+
+-------------------------------+
| Account |
|-------------------------------|
| AccID(pk) | UserName |
|---------------|---------------|
| 1 | AA |
| 2 | BB |
+---------------+---------------+
用戶購買產品。對於每個產品系統生成一個賬單項目。一張賬單可以有很多賬單項目。用戶可以再次購買相同的物品,不同的物品或兩者的組合。我想知道用戶在特定時間段內從每種產品購買了多少物品。
預計:
+-----------------------------------------------+
| ProductName | UserName | Quantity |
|---------------|---------------|---------------|
| Product1 | AA | 10 |
| Product2 | AA | 10 |
| Product3 | AA | 0 |
| Product1 | BB | 0 |
| Product2 | BB | 10 |
| Product3 | BB | 0 |
+---------------+---------------+---------------+
我嘗試至今:
SELECT Product.ProductName AS ProductName,
Account.UserName AS UserName,
SUM(Billitem.Quantity) AS Quantity
FROM billitem
INNER JOIN Product ON BillItem.ProductID = Product.ProductID
INNER JOIN Bill ON Billitem.BillID = Bill.BillID
INNER JOIN Account ON Bill.AccID = Account.AccID
WHERE Bill.BillDate >= 'xxxx-xx-xx'AND Bill.BillDate <= 'xxxx-xx-xx'
GROUP BY UserName, ProductName
結果:
|-----------------------------------------------|
| ProductName | UserName | Quantity |
|---------------|---------------|---------------|
| Product1 | AA | 10 |
| Product2 | AA | 10 |
| Product2 | BB | 10 |
+---------------+---------------+---------------+
有什麼辦法與MySQL查詢實現這一目標?
是什麼問題?這個結果是什麼意思?它預期或你的結果上述查詢?其查詢結果爲 – underscore
。我其實想要類似 –
這樣的東西有什麼問題? – underscore