我需要从数据库中选择列值不等于同一行的另一列的所有记录。在 SQL 中,它看起来像这样:SELECT * FROM `user` WHERE (`created_at` != `logged_at`)在 Yii2 中,我尝试这样做:$query = User::find()->where(['!=', 'created_at', 'logged_at']);但它会产生SELECT * FROM `user` WHERE (`created_at` != 'logged_at')所以,问题是,如何使用列名而不是字符串作为第三个参数?
1 回答
慕运维8079593
TA贡献1876条经验 获得超5个赞
尝试使用yii\db\Expression类:
$query = User::find()->where(new yii\db\Expression('created_at != logged_at');
- 1 回答
- 0 关注
- 156 浏览
添加回答
举报
0/150
提交
取消