SQL 結合テーブルを作成しようとしていますが、必要な正しいデータが返されません。だから私は以下のような構造のスライダーテーブルを持っています。
したがって、テーブルにはアイテムを参照する外部キーがあります。アイテムまたはスライダーには、公開済みと呼ばれる同じ列があり、スライダー/アイテムが公開されているかどうかを示します。
公開されているすべてのスライダーと、公開されているアイテムを返すクエリを作成しようとしています。item_id が nll であるスライダーと結合されています。
したがって、上記の画像によると、クエリは ID (2-3-4) を持つ 3 行のみを返す必要があります。これは、テーブル項目の ID 34 (item_id=34) の項目が公開されていないため、返される値には含まれないためです。これまでに作成したクエリは次のとおりです。
SELECT *
FROM sliders
LEFT JOIN items ON sliders.item_id = items.id
WHERE sliders.published =1 AND items.published =1
ただし、クエリは 2 行しか返しません。ID 23、28 の項目に対応する ID 2 および 3 の行。
返される結果は次のとおりです。
そのため、3 行ではなく 2 行が返されました。欠落している行は、id 3 の行であり、item_id=null です。
私は一日中これを理解しようとしてきましたが、ここで立ち往生しているようです...
どんな助けでも大歓迎です..