0

以下のSQLを見ると、クエリを整理するのに問題があります(気が狂います)。および/またはに注意してください。基本的に、2つのカテゴリのアーティストの画像を1つの呼び出しに組み合わせる必要がありますが、以下のSQLを使用すると、最初のカテゴリのすべての画像と、2番目のカテゴリのすべてのアーティストの画像が取得されます。特定のアーティストのために。AND呼び出しを使用すると、両方の画像のみが取得されます。したがって、基本的にこれが理にかなっていることを願っています。すべての助けに感謝します。

SELECT i.img_name, i.ordered_by, i.img_description, a.artist_path_name, a.artist_id, a.artist_dir, a.artist_name, a.first_name, a.last_name, a.artist_titletag, a.artist_metadesc, a.artist_metakey, ck.catKey_id, ck.keyword
        FROM images AS i JOIN artists AS a USING (artist_id)
        JOIN img_cat_table AS imc USING (img_id)
        JOIN catKeys AS ck USING (catKey_id)
        WHERE artist_name = 'j' AND catKey_id = 5 OR catKey_id = 1
4

1 に答える 1

2

両方を使用している場合はAND/OR、括弧を使用して順序を決定する必要があります

WHERE (artist_name = 'j') AND (catKey_id = 5 OR catKey_id = 1)

または、次のWHERE句を使用することもできます。

WHERE (artist_name = 'j') AND (catKey_id IN (5, 1))
于 2012-05-16T20:07:59.757 に答える