クエリから結果を取得するのに問題があります。トランザクションが特定の zip にある場合、トランザクションの単位販売の合計数と合計数を取得したいと考えています。
ここに私のテーブルがあります:
TABLE unit_type(
id (Primary key)
unit_name (varchar)
department_id (Foreign key)
)
TABLE transaction(
id (PK)
commission_fix_out (int)
transaction_end_week (int)
property_id (FK)
unit_type_id (FK)
...
)
TABLE property(
id (PK)
property_zip_id (FK)
...
)
unit_typesテーブルには次のレコードがあります。
+-----+----------------------+----------------+
| id | unit_name | department_id |
+-----+----------------------+----------------+
| 1 | WV construction | 1 |
| 2 | WV resale | 1 |
| 3 | WV rent | 1 |
| 4 | BV industrial sale | 2 |
| 5 | BV industrial rent | 2 |
| ... | ... | ... |
+-----+----------------------+----------------+
私のクエリは次のようになります。
SELECT SUM(commission_fix_out), COUNT(commission_fix_out), unit_name, ut.id
FROM unit_type as ut
LEFT JOIN transaction as t
ON ut.id = t.unit_type_id
RIGHT JOIN property as p
ON (p.id = t.property_id AND p.property_zip_id = 1459)
WHERE ut.department_id = 1
GROUP BY unit_name
ORDER BY ut.id
その結果:
+------------+-------------+-------------+---------+
| SUM(...) | COUNT(..) | unit_name | ut.id |
+------------+-------------+-------------+---------+
| 40014 | 11 | WV resale | 2 |
| NULL | 0 | WV rent | 3 |
+------------+-------------+-------------+---------+
WV constructionで別の行を期待していましたが、表示されません。私がこれでどこが間違っているか知っている人はいますか?