Yii2关系查询帮助:select only records which have related records
Yii2 relational query help: select only records which have related records
我有两个表 A 和 B,关系为 "A has many B"。
A可能没有任何B记录。
我需要编写一个查询,该查询将 select 只有那些在 B 中有相关记录的 A 记录。没有相关 B 记录的记录应该被忽略。
使用 Yii2 活动记录,我还尝试加载所有 A 记录,并预先加载相关的 B 记录。所以这就是我所拥有的:
Movies::find()->with('shows')->all();
如何添加过滤掉没有节目的电影的必要条件?
如何为依赖于节目数据的电影添加任何条件?
用innerJoinWith代替with,比如:
Movies::find()->innerJoinWith(['shows'])->all();
http://www.yiiframework.com/doc-2.0/yii-db-activequery.html#innerJoinWith()-detail
我有两个表 A 和 B,关系为 "A has many B"。 A可能没有任何B记录。
我需要编写一个查询,该查询将 select 只有那些在 B 中有相关记录的 A 记录。没有相关 B 记录的记录应该被忽略。 使用 Yii2 活动记录,我还尝试加载所有 A 记录,并预先加载相关的 B 记录。所以这就是我所拥有的:
Movies::find()->with('shows')->all();
如何添加过滤掉没有节目的电影的必要条件? 如何为依赖于节目数据的电影添加任何条件?
用innerJoinWith代替with,比如:
Movies::find()->innerJoinWith(['shows'])->all();
http://www.yiiframework.com/doc-2.0/yii-db-activequery.html#innerJoinWith()-detail