//AND (`id`=1 AND `name`='2')
$query->where(['id' => 1,'name' => '2']);
//AND (`time` <= 1234567891)
$query->where('time', '<=', 1234567891);
//AND (`time` LIKE '%test%')
$query->where('time', 'like', '%test%');
//AND (`id` IN(1,2,3))
$query->where(['id' => [1,2,3]]);
//AND (FIND_IN_SET(1,`id`))
$query->whereFindInSet('id', 1);
//AND (`title` LIKE '%haha%' OR `name` LIKE '%haha%')
$query->where('title|name', 'like', '%haha%');
//AND (`time` >= 0 AND `date` >= 0)
$query->where('time&date', '>=', 0);
//AND (`name` LIKE '%think' OR `name` LIKE 'php%')
$query->where('name', 'like', ['%think','php%'],'OR');
//AND (`id` IN(1,2,3)) AND ((`name` LIKE '%think' OR `name` LIKE 'php%') OR `type_id` = 2)
$orWhere = [
['name', 'like', ['%think','php%'], 'OR'],
['type_id', '=', 2],
];
$query->where(['id' => [1,2,3]])
->where('name', 'like', ['%think','php%'],'OR')
->where((function ($query) use ($orWhere) {
$query->whereOr($orWhere);
}))