Mit `DATUM()` in der Lehre Querybuilder

Ich brauchen, um alle Zeilen, in denen DATE(a.when) dem string entspricht, der 2014-09-30.

$builder = $this->em->createQueryBuilder();
$builder->select('a')
        ->from('Entity\Appointment', 'a')
        ->andWhere('a.when = :date')
        ->setParameter('date', $date);

a.when ist ein full -DATETIME; :date ist nur ein string (in DATE - format).

Den folgenden und Variationen hat nicht funktioniert:

        ->andWhere('DATE(a.when) = :date')

Error: Expected known function, got 'DATE'

Was ist die korrekte Verwendung der hier?

  • möglich, Duplikat der Lehre 2 - die Ergebnisse Filtern, indem Sie ein datetime-Feld-date-Teil
  • nicht ein Duplikat ist. Ich bin mit der queryBuilder und die Fehlermeldung mit createQuery und die queryBuilder ist die gleiche: Error: Expected known function, got 'DATE'.
  • Der Fehler ist der gleiche, weil es keine DATE() im DQL. Wenn Sie die WHERE-Klausel aus der verlinkten duplizieren, wird der Ansatz sollte auch funktionieren.
InformationsquelleAutor Daniel W. | 2014-09-23
Schreibe einen Kommentar