以下のように定義された 2 つのテーブル:
---------- Table1 -----------
id type
1 A
2 B
3 C
---------- Table2 ----------
id type sub_type
1 A sub_type1
2 B sub_type1
3 C sub_type2
4 A sub_type3
5 B sub_type2
sub_type1
subTypesまたはを持つすべてのタイプを見つけたいのですsub_type3
が、私のコードは次のとおりです。
$SubCategoryFilterArray = ['sub_type1','sub_type3'].
$query = $db->table1();
function SubCategoryFilteredQuery($SubCategoryFilterArray , $query){
$filterSubArrayQuery = '';
for($i = 0 ; $i < sizeof($SubCategoryFilterArray); $i++){
if($i>0)
$filterSubArrayQuery .= ' OR ' ;
$filterSubArrayQuery .= $db->table2()->where(' sub_type = "' . $SubCategoryFilterArray[$i].'" ')->select('type');
}
// $q = $db->table2()->where($p)->select('type');
return $query->where('type', $filterSubArrayQuery); // doubt
}
$finalQuery = SubCategoryFilteredQuery($SubCategoryFilterArray , $query);
echo count($finalQuery);