当前位置: 动力学知识库 > 问答 > 编程问答 >

php - How to query NOT NULL with Doctrine?

问题描述:

I have table Test:

Test:

id | name

1 | aaa

2 |

3 | ccc

4 | aaa

5 |

6 | ddd

I want result where name is NOT NULL:

aaa

ccc

aaa

ddd

How can i get with:

Doctrine_Core::getTable('Test')->findBy('name', NOTNULL??) <-doesnt working

and in model with:

$this->createQuery('u')

->where('name = ?', NOTNULL ???) <- doesnt working

->execute();

网友答案:

Try this:

$this->createQuery('u')
     ->where('name IS NOT NULL')
     ->execute();

which is standard SQL syntax. Doctrine doesn't convert Null values into proper sql.

网友答案:

Do it in Doctrine way, from query builder and Expr class.

 $qb = $entityManager->createQueryBuilder();
 $result = $qb->select('t')
        ->from('Test','t')
        ->where($qb->expr()->isNotNull('t.name'))
        ->groupBy('t.name')
        ->getQuery()
        ->getResult();

there are also distinct() function.

分享给朋友:
您可能感兴趣的文章:
随机阅读: