这是我的查询:
Doctrine::getTable('Registar')->find('1');
'1' 是一个 ID
我想添加其他几个 IDIN
有条件有这样的请求:
SELECT c.id AS c__id, c.created_at AS c__created_at, c.updated_at AS c__updated_at FROM registar c WHERE c.id IN ('1','2','3')
可以通过find
功能添加此条件吗?
这是我的查询:
Doctrine::getTable('Registar')->find('1');
'1' 是一个 ID
我想添加其他几个 IDIN
有条件有这样的请求:
SELECT c.id AS c__id, c.created_at AS c__created_at, c.updated_at AS c__updated_at FROM registar c WHERE c.id IN ('1','2','3')
可以通过find
功能添加此条件吗?
find
只是使用主键(在您的情况下)检索一行的一种简短方法id
。
如果要进行更复杂的查询,则必须使用where
方法,如下所示:
Doctrine::getTable('Registar')
->whereIn('id', array('1','2','3'))
->execute();
最好在里面定义这个方法RegistarTable.class.php
,像这样:
public function findByIds($ids)
{
return $this->createQuery()
->whereIn('id', $ids)
->execute();
}
然后使用以下命令调用它:
Doctrine::getTable('Registar')->findByIds(array('1','2','3'));