SELECT
COUNT(*) AS num_elements,
SUM(some_value) AS like_to_sum,
TRUNC(SYSDATE) - TRUNC(your_date) AS rel_date
FROM the_large_table
GROUP BY TRUNC(SYSDATE) - TRUNC(your_date);
Aggregato su daterange relativo in Oracle SQL
Domanda
Ho una tabella con diverse colonne su cui vorrei aggregare, mi sono già aggregato nei giorni assoluti, ma ora voglio aggregare relativamente. Nel mio tavolo ho un timestamp e vorrei raggruppare per un intervallo di date in modo che il giorno di DateSamp sia 0, il giorno dopo 1 e così via.
SELECT count(*) num_elements, sum(some_value) like_to_sum, reldate
FROM the_large_table
GROUP BY *** what goes here *** reldate.
Posso aggregare il ritorno da una funzione o esiste un modo migliore per affrontare questo problema.
Se posso aggregare il risultato da una funzione, ci sono funzioni già in SQL o come potrebbe essere risolto?
Soluzione
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow