1

Yii2 でこの SQL クエリをどのように記述しますか?

SELECT * FROM table
WHERE column1 IN (SELECT column2 FROM table WHERE column1 = 5)
4

5 に答える 5

3

YourModelname で表を表すという名前のモデルを考えてみましょうtable。次に、クエリは次のようになります。

$subQuery = YourModel::find()->select('column2')->where(['column1' => 5]);
$query = YourModel::find()->where(['column1' => $subQuery]);
$models = $query->all();

また、以前にも同様の質問がありました。

于 2015-11-10T03:23:34.593 に答える
0
Yii::$app->db->createCommand('SELECT * FROM table
       WHERE column1 IN (SELECT column2 FROM table WHERE column1 = :val)', [':val' => 5])->queryAll();

['id' => 1, 'name' => 'Victor'] のような連想配列を返します

于 2015-12-09T18:43:56.980 に答える