私は次の設定をしています:
次のようなphpの配列:
$arr = array(1, 2, 3, 4);
次のようなクエリ:
SELECT `epicThing` FROM `epicTable` AS `epic`
WHERE
SELECT `ids` FROM `someTable`
WHERE `epic`.`somethingSomething` = `someTable`.`somethingElse`
(<<<< HERE IS MY PROBLEM >>>>)
サブクエリは (1, 2, 3, 4, 5, 6, 7, 8, 9) のようなものを返します。
ここで確認する必要があるのは、配列の各要素がサブクエリの返された回答に含まれていることです。
基本的に次のようなもの
SELECT `epicThing` FROM `epicTable` AS `epic`
WHERE
'1' IN (
SELECT `ids` FROM `someTable`
WHERE `epic`.`somethingSomething` = `someTable`.`somethingElse`
)
AND
'2' IN (
SELECT `ids` FROM `someTable`
WHERE `epic`.`somethingSomething` = `someTable`.`somethingElse`
)
AND
'3' IN (
SELECT `ids` FROM `someTable`
WHERE `epic`.`somethingSomething` = `someTable`.`somethingElse`
).......
しかし、各要素について。
簡単にするために、要素が常に順序どおりであると仮定しましょう (おそらく配列を文字列に変換する必要があるため)。しかし、可能であれば一般的な解決策を希望します。
私がやりたくないのは、php でデータを取得してそこでチェックすることです (これは、巨大なクエリのほんの一部にすぎません)。