Mic*_*idy 16 php doctrine symfony1 symfony-1.4 doctrine-1.2
我有桌子测试:
Test:
id | name
1 | aaa
2 |
3 | ccc
4 | aaa
5 |
6 | ddd
Run Code Online (Sandbox Code Playgroud)
我想要名称为NOT NULL的结果:
aaa
ccc
aaa
ddd
Run Code Online (Sandbox Code Playgroud)
我怎么能得到:
Doctrine_Core::getTable('Test')->findBy('name', NOTNULL??) <-doesnt working
Run Code Online (Sandbox Code Playgroud)
在模型中:
$this->createQuery('u')
->where('name = ?', NOTNULL ???) <- doesnt working
->execute();
Run Code Online (Sandbox Code Playgroud)
Dzi*_*mid 35
试试这个:
$this->createQuery('u')
->where('name IS NOT NULL')
->execute();
Run Code Online (Sandbox Code Playgroud)
这是标准的SQL语法.Doctrine不会将Null值转换为正确的sql.
从查询构建器和Expr类以Doctrine方式进行操作。
$qb = $entityManager->createQueryBuilder();
$result = $qb->select('t')
->from('Test','t')
->where($qb->expr()->isNotNull('t.name'))
->groupBy('t.name')
->getQuery()
->getResult();
Run Code Online (Sandbox Code Playgroud)
也有distinct()函数。
归档时间: |
|
查看次数: |
42305 次 |
最近记录: |