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

Pivottabel for data pr. time

SELECT * FROM crosstab(
       'SELECT cola, EXTRACT(HOUR from colb) AS h, count(*) AS ct
        FROM   fooo
        GROUP  BY 1, 2
        ORDER  BY 1, 2'

       ,'SELECT g::float8 FROM generate_series(0,23) g'
   ) AS ct (cola text
      , h00 int, h01 int, h02 int, h03 int, h04 int, h05 int
      , h06 int, h07 int, h08 int, h09 int, h10 int, h11 int
      , h12 int, h13 int, h14 int, h15 int, h16 int, h17 int
      , h18 int, h19 int, h20 int, h21 int, h22 int, h23 int);

Bortset fra:
Du glemte timen 0 / 24.
Brug af kolonnenavne med indledende tegn for at undgå behovet for dobbelte anførselstegn.

Detaljer:




  1. Brugersystem - Flere roller i MySQL-databasen

  2. MySQL feltdataparsing

  3. Initialiseringsafsnit af pakken

  4. Er der nogen god universel PHP MySQL HTTP-tunnel?