Použití datových funkcí na řetězcích
Existuje několik užitečných funkcí, které pracují přímo s poli typu datum nebo datum a čas. Například:
DATE_TRUNC('month', date)zkrátí každé datum na první den daného měsíce.DATE_PART('year', date)vrátí rok každého datového záznamu jako celé číslo.
Obě funkce přijímají argumenty ve formátu ('period', field), kde period je časový interval, například 'minute', 'day' nebo 'decade'.
V tomto cvičení si tyto datové funkce vyzkoušíš na tabulce country_stats – konkrétně se pokusíš zjistit decade (desetiletí) pro každý záznam year dvěma různými způsoby. Aby funkce správně fungovaly, budeš muset použít CAST() na pole year.
Toto cvičení je součástí kurzu
Reporting in SQL
Pokyny k cvičení
- Z tabulky
country_statsvyber desetiletí dvěma způsoby: pomocíDATE_PART()aDATE_TRUNC. - Převeď datový typ pole
year, aby se předešlo chybám. - Sečti hodnoty
gdpa výsledný součet pojmenujworld_gdp. - Seskup a seřaď výsledky podle roku (sestupně).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
SELECT
year,
-- Pull decade, decade_truncate, and the world's gdp
DATE_PART(____) AS decade,
DATE_TRUNC(____) AS decade_truncated,
____ AS world_gdp
FROM ____
-- Group and order by year in descending order
GROUP BY ____
ORDER BY ____;