phalcon查询技巧

来源:互联网 发布:下载genbank数据库 编辑:程序博客网 时间:2024/05/13 09:44

简要介绍几个使用phalcon查询的小技巧

1.使用find,和in来查询,如下:

$orderIdList = array_unique(array_map('intval',$orderIdList));if ($orderIdList) {$orderList = ChildOrder::find(['conditions'=>'parents_id IN ({orderIdList:array})','bind'=>['orderIdList'=>$orderIdList]]);}
这里的$orderIdList是一个数组,使用这种查询方式就查询出类似这样的效果
select * from `childorder` where parents_id in ($orderIdList);

2.巧用model来批量更新数据

上面已经查询出对象$orderList,接下来要批量修改对象中的某一列的值,可以这样做

foreach($orderList as $row){$row->state = 0;if ($row->save() == false) {foreach ($orderList->getMessages() as $message) {throw new \Exception('更新失败');}}}
这样做效果类似于
update `childorder` set state = 0 where parents_id in ($orderIdList);



1 0