0

以下にサンプルのSQLクエリがあります。

    選択する..
    FIND_IN_SET((SELECT cat_id
    FROM mydb.table_categories
    WHERE cat_name LIKE "%Pets%"),b.categories_id)
    
mysqlエラーを表示します。

このサンプル クエリ:

    (cat_id を選択
    FROM mydb.table_categories
    WHERE cat_name LIKE "%Pets%")
    
(25,260) の結果を返し、b.categories id に (9,25,257,300) が含まれる b.categories_id で見つかった場合と比較したい

つまり、このように find_in_set を使用できますか?find_in_set((25,260),(9,25,257,300))?

4

1 に答える 1

2

使ってみてGROUP_CONCAT

SELECT ....
     FIND_IN_SET((SELECT GROUP_CONCAT(cat_id)
                  FROM   mydb.table_categories
                  WHERE cat_name LIKE "%Pets%"),b.categories_id)
FROM....

JOINまたは、これに対してorIN句を使用することもできます。を使用するよりもはるかに優れていGROUP_CONCATます。希望する結果のサンプル日付を投稿できますか?

于 2013-01-08T09:22:36.847 に答える