IN 查询不到 [ 2.0 版本 ]
$Grouporder=Grouporder::find()->where(['state'=>2,'id'=>$id])->asArray()->all();
foreach ($Grouporder as $key=>$value) {
$map['id'] = array('in',$value['orderId']);
$Order=Ordermanagement::find()->where($map)->asArray()->all();
}
IN 多条查询语句 不好事儿 求高手指导 谢谢
ali 补充于 2017-04-11 17:03
谢谢 各位 谢谢 你们的回复
ali 补充于 2017-05-02 10:00
我昨天写出来了 ` $default[]='and';
$map['LoanVariety']=['IN'=>'农村小额信用贷款','农贷通'];
$default[]=$map;`
最佳答案
其他 3 个回答
-
把你的$value['orderId']都打印初来,查看一下是否是你预期的值
共 5 条回复@ali in: 第一个操作数应为字段名称或者 DB 表达式。第二个操作符既可以是一个数组, 也可以是一个 Query 对象。它会转换成IN条件语句。如果第二个操作数是一个 数组,那么它代表的是字段或 DB 表达式的取值范围。如果第二个操作数是 Query 对象,那么这个子查询的结果集将会作为第一个操作符的字段或者 DB 表达式的取值范围。 例如, ['in', 'id', [1, 2, 3]] 将生成 id IN (1, 2, 3)。 该方法将正确地为字段名加引号以及为取值范围转义。in 操作符还支持组合字段,此时, 操作数1应该是一个字段名数组,而操作数2应该是一个数组或者 Query 对象, 代表这些字段的取值范围。
手册里的
-
ali 乌鲁木齐
注册时间:2016-12-21
最后登录:2024-10-17
在线时长:17小时39分
最后登录:2024-10-17
在线时长:17小时39分
- 粉丝3
- 金钱10
- 威望40
- 积分580