Ho regolarmente venire attraverso uno scenario, dove voglio interrogare un soggetto con un valore specifico:Esiste un modo semplice per combinare IS NULL e =: valore in Doctrine 2 DQL?
$query = $em->createQuery('SELECT e FROM Entity e WHERE e.parent = :parent');
$query->setParameter('parent', $parent);
Spesso, questo valore può essere nullo, ma WHERE e.parent = NULL
non produce risultati, costringendomi a incidere in giro come questo:
if ($parent === null) {
$query = $em->createQuery('SELECT e FROM Entity e WHERE e.parent = IS NULL');
}
else {
$query = $em->createQuery('SELECT e FROM Entity e WHERE e.parent = :parent');
$query->setParameter('parent', $parent);
}
Pur comprendendo la logica alla base NULL != NULL
in SQL/DQL, il fatto è che la conseguenza è davvero fastidioso in questo caso.
Esiste un modo più semplice per eseguire questa query, quando il parametro può essere nullo?
La mia risposta non è corretta? – ThaDafinser