sql >> Base de Datos >  >> RDS >> Mysql

Salida Symfony de datos en tablas agrupadas por fecha

ejemplo del documento de doctrina:

La construcción INDEX BY no es nada que se traduzca directamente en SQL pero que afecte la hidratación de objetos y matrices. Después de cada cláusula FROM y JOIN, especifica por qué campo se debe indexar esta clase en el resultado. De forma predeterminada, un resultado se incrementa con claves numéricas que comienzan con 0. Sin embargo, con INDEX BY puede especificar cualquier otra columna para que sea la clave de su resultado, aunque en realidad solo tiene sentido con campos primarios o únicos:

SELECT u.id, u.status, upper(u.name) nameUpper FROM User u INDEX BY u.id
JOIN u.phonenumbers p INDEX BY p.phonenumber

Devuelve una matriz del siguiente tipo, indexada tanto por ID de usuario como por ID de número de teléfono:

array
  0 =>
    array
      1 =>
        object(stdClass)[299]
          public '__CLASS__' => string 'Doctrine\Tests\Models\CMS\CmsUser' (length=33)
          public 'id' => int 1
          ..
      'nameUpper' => string 'ROMANB' (length=6)
  1 =>
    array
      2 =>
        object(stdClass)[298]
          public '__CLASS__' => string 'Doctrine\Tests\Models\CMS\CmsUser' (length=33)
          public 'id' => int 2
          ...
      'nameUpper' => string 'JWAGE' (length=5)

doctrine document