Php 如何通过queryBuilder在Yii2中构建此sql查询?
如何使用queryBuilder在Yii2框架中获得以下查询?我想使用运算符格式,但我不明白如何处理或条件Php 如何通过queryBuilder在Yii2中构建此sql查询?,php,mysql,sql,yii2,Php,Mysql,Sql,Yii2,如何使用queryBuilder在Yii2框架中获得以下查询?我想使用运算符格式,但我不明白如何处理或条件 SELECT "user_data".* FROM "user_data" LEFT JOIN "user" ON "user_data"."user_id" = "user"."id" WHERE (create_date <= NOW() - INTERVAL '1 WEEK') AND ((("user_id"='1') and ("last_visit" IS NULL))
SELECT "user_data".* FROM "user_data" LEFT JOIN "user" ON "user_data"."user_id" = "user"."id" WHERE (create_date <= NOW() - INTERVAL '1 WEEK') AND ((("user_id"='1') and ("last_visit" IS NULL)) OR ("email_status"=0));
选择“用户数据”。*从“用户数据”左键加入“用户数据”中的“用户”。“用户id”=“用户”。“id”其中(创建用户日期连接('user'))
->其中(“create_date您需要以这种方式嵌套条件:
UserDataModel::find()
->joinWith('user')
->where("create_date <= NOW() - INTERVAL '1 WEEK'")
->andWhere([
'or'
[
'and',
['is', 'last_visit', null],
['in', 'user_id', $array],
],
['email_status' => self::STATUS_INACTIVE],
])
->createCommand()
->getRawSql();
UserDataModel::find()
->joinWith('用户')
->where(“create_date see docs:@Luuk这个问题是关于Yii 2的,你已经链接了Yii 1.1的文档。好的,所以我应该链接到,但是这个问题问的是什么,不看文档?
SELECT "user_data".* FROM "user_data" LEFT JOIN "user" ON "user_data"."user_id" = "user"."id" WHERE (create_date <= NOW() - INTERVAL '1 WEEK') AND (("last_visit" IS NULL) AND ("user_id"='1') AND ("email_status"=0))
UserDataModel::find()
->joinWith('user')
->where("create_date <= NOW() - INTERVAL '1 WEEK'")
->andWhere([
'or'
[
'and',
['is', 'last_visit', null],
['in', 'user_id', $array],
],
['email_status' => self::STATUS_INACTIVE],
])
->createCommand()
->getRawSql();