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);
助手:
您忘记了0/24小时。
使用带有前导字符的列名称可以避免使用双引号。
细节:
- PostgreSQL交叉表查询



