このMySqlクエリが部分的に機能しています:
SELECT p.product_id, p.product_name, p.sales,
p.length, p.hits, COUNT(w.product_id) AS favorites
FROM `products` AS p, `products_mf_xref` AS m,
`wishlist_items` AS w
WHERE m.manufacturer_id = '1'
AND p.product_id = m.product_id
AND m.product_id = w.product_id
GROUP BY m.product_id ORDER BY p.product_id ASC
テーブルからいくつかのフィールドを復元し、これらの製品が別のテーブルで参照されている回数を取得しようとしています (この最後のテーブルは「ウィッシュリスト」と呼ばれていました)。クエリは正常に動作していますが、ウィッシュ リスト テーブルで少なくとも 1 回参照されている製品しか取得できません。
count(*) は意味のある NULL 値を取得しないことを読みましたが、ウィッシュ リスト テーブルで参照されていない製品、つまり COUNT(w.product_id) が「0」に等しい製品も必要です。
null 値を含むすべての製品を回復するためのアイデアはありますか? クエリを変更するアイデアはありますか? 頭おかしくなるぞ!!
前もって感謝します!