J'ai un test de table:
Test:
id | name
1 | aaa
2 |
3 | ccc
4 | aaa
5 |
6 | ddd
Je veux un résultat où le nom n'est PAS NUL:
aaa
ccc
aaa
ddd
Comment obtenir avec:
Doctrine_Core::getTable('Test')->findBy('name', NOTNULL??) <-doesnt working
et en modèle avec:
$this->createQuery('u')
->where('name = ?', NOTNULL ???) <- doesnt working
->execute();
Essaye ça:
$this->createQuery('u')
->where('name IS NOT NULL')
->execute();
qui est la syntaxe SQL standard. Doctrine ne convertit pas les valeurs Null en SQL approprié.
Faites-le de la manière Doctrine, à partir du générateur de requêtes et de la classe Expr.
$qb = $entityManager->createQueryBuilder();
$result = $qb->select('t')
->from('Test','t')
->where($qb->expr()->isNotNull('t.name'))
->groupBy('t.name')
->getQuery()
->getResult();
il existe également une fonction distinct ().