微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何在Yii中优化查询?

我有2张桌子:

用户
id,姓名,姓氏

USERUSER
u_id1,u_id2,日期,状态

我这里有一个模型在行动USER:

public function getUsers($status)
{
    return $this->hasMany(UserUser::className(), ['u_id1' => 'id'])
        ->where(['status' => $status]);
}

但我需要添加搜索表User的’name’,’surname’的功能,如果我添加一个WHERE或Like,
一个错误,表UserUser这样的列(名称,姓氏)没有找到?
如何将这两个值添加搜索或返回值?
我用的是Yii2.

解决方法:

    return $this->hasMany(User::className(), ['id' => 'u_id2'])->viaTable(UserUser::tableName(), ['u_id1' => 'id'],
        function($query) {
            $query->where(['status' => 1]);
        })->andWhere(['like', 'name', $input])
          ->orWhere(['like', 'last_name', $input]);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐