Yii2 SQL查询语句

15 Oct 2015 Category: PHP

Yii2对于数据库操作好多都是通过ActiveRecord进行。但是ActiveRecord提供的一些 接口都是进行比较简单的查询。如果进行一些复杂的查询,查询语句的构建就比较麻烦。 对于自己所想到的sql查询语句创建进行记录。

sql = "SELECT * FROM `table` where `name` like %xiaoming%
       and ( `last_ip` like %192.168.171%  or `current_ip` like %192.168.171% )";

Yii语句


$query->andFilterWhere(['like','name','xiaoming']);
$query->andWhere([
    'or',
    ['like','last_ip','192.168.171'],
    ['like','current_ip','192.168.171']
]);

注解

andWhere构建查询语句,会根据参数的类型进行解析。第一个参数是第二,第三个参数的连 接符。如果第二第,第三个参数还符合where参数定义,则进行递归解析。