ホームページ  >  記事  >  PHPフレームワーク  >  yii2 フレームワークでサブクエリを記述する方法

yii2 フレームワークでサブクエリを記述する方法

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼オリジナル
2019-12-09 13:52:305030ブラウズ

yii2 フレームワークでサブクエリを記述する方法

Yii でサブクエリを使用する方法

最初のステップは、サブクエリを作成することです。 yii\db\Query またはモデルに基づいて。

$subQuery = Order::find()
->where(['user_id' => $userId])
->andWhere(['status' => $status]);

ソートとページングを追加することもできます。例:

$subQuery->orderBy(['id' => SORT_ASC])
->offset($offset)
->limit($pageSize);

これで、mysql でサブクエリを記述できる場所である限り、このサブクエリをメイン クエリで使用できます。 、このサブクエリを直接使用できます。

$list = (new Query())->select($field)
->from(['order' => $subQuery]) // 在这里使用了子查询
->leftJoin(['goods' => OrderGoods::tableName()], 'order.id = goods.order_id')
->createCommand()
->queryAll();

最終的に生成されたステートメント

SELECT
*
FROM
( SELECT
* 
FROM
`od_order` 
WHERE
( `user_id` = '1' ) 
ORDER BY
`id` ASC
LIMIT 10 OFFSET 1 
) `order`
LEFT JOIN `od_order_goods` `goods` ON `order`.id = goods.order_id

PHP 中国語 Web サイトには、無料の Yii 入門チュートリアル が多数あり、誰でも学習することができます。

以上がyii2 フレームワークでサブクエリを記述する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。