0

MySQL データベースに 2 つのテーブルがあります。以下のデータベース構造を参照してください。

tbl_product
id
1
2
3

tbl_product_filter
id | product_id | product_filter_value
1    1            1
2    1            2
3    1            3
4    2            1
5    2            2
6    3            1

product_filter_value フィールド12の値のみを持つ製品を取得するにはどうすればよいですか?

4

2 に答える 2

1

サブクエリの使用:

SELECT *
FROM tbl_product
WHERE id IN (
    SELECT product_id
    FROM tbl_product_filter
    WHERE product_filter_value IN (1, 2)
)

結合の使用(このクエリは1つの製品を複数回表示する場合があります):

SELECT tbl_product.*
FROM tbl_product
INNER JOIN tbl_product_filter ON tbl_product.id = tbl_product_filter.product_id
WHERE product_filter_value IN (1, 2)
于 2012-06-11T12:37:02.653 に答える