sql >> Database teknologi >  >> RDS >> PostgreSQL

I Postgresql hvordan man bestiller efter dato, mens man beholder brugerdefineret datoformat

Den rigtige og enkle løsning er:

SELECT to_char(b.foo,'dd/MM/yyyy') as foo, b.bar
FROM   baz b
ORDER  BY b.foo;

Den formaterede datokolonne foo er en helt ny kolonne til forespørgselsplanlæggeren, der tilfældigvis er i konflikt med tabelkolonnen foo . I ORDER BY og GROUP BY klausuler har outputkolonnernes navne forrang over tabelkolonner. Det ukvalificerede navn foo ville henvise til outputkolonnen.

For at bruge den oprindelige tabelkolonne i ORDER BY-sætningen skal du bare table-kvalificere kolonnen .

Jeg tabelkvalificerede alle tabelkolonner for at tydeliggøre min pointe. Vil kun være påkrævet i ORDER BY-klausulen i dette tilfælde. Tabelalias b er kun for nemheds skyld.



  1. PDO::commit() succes eller fiasko

  2. Rækkerangering i en MySQL-visning

  3. MySQL python-stik:ikke alle argumenter konverteres under bytes-formatering

  4. PHP/MYSQL Hjælp - uventet T_VARIABLE