sql >> Databasteknik >  >> RDS >> PostgreSQL

dela en rad i flera rader i SQL

Jag tror att ditt önskade utdataprov "split efter tid" är fel och borde istället vara detta

1=> 2014-01-01 23:43:00 - 2014-01-02 02:30:00, as date 2014-01-01 
2=> 2014-01-02 02:30:01 - 2014-01-03 02:30:00, as date 2014-01-02 
3=> 2014-01-03 02:30:01 - 2014-01-03 03:33:00, as date 2014-01-03 

Om så är fallet så gör detta

select day, count(*)
from (
    select generate_series(
        (start_time - interval '2 hours 30 minutes')::date,
        stop_time,
        interval '1 day'
    )::date as day
    from t
) s
group by day
order by day


  1. Hur väljer man rader efter tidsintervall i mysql?

  2. Java-animerad GIF- och MySQL-anslutning

  3. Vilka är skillnaderna mellan ett klustrat och ett icke-klustrat index?

  4. Oracle tidsstämpel till sql-server DateTime