Använda datumfunktioner på strängar
Det finns flera användbara funktioner som är specifikt utformade för datum- eller datumtidsfält. Till exempel:
DATE_TRUNC('month', date)trunkerar varje datum till den första dagen i månaden.DATE_PART('year', date)returnerar årtalet, som ett heltal, för varje datumvärde.
Generellt sett är argumenten för båda funktionerna ('period', field), där period är ett datum- eller tidsintervall, exempelvis 'minute', 'day' eller 'decade'.
I den här övningen är målet att testa dessa datumfunktioner på tabellen country_stats – närmare bestämt genom att hämta ut decade för varje year på två olika sätt. För att köra funktionerna behöver du använda CAST() på fältet year.
Den här övningen är en del av kursen
Rapportering i SQL
Övningsinstruktioner
- Hämta data från tabellen
country_statsoch välj ut decenniet på två sätt: medDATE_PART()och medDATE_TRUNC. - Konvertera datatypen för fältet
yearför att åtgärda felen. - Summera
gdpför att fåworld_gdp. - Gruppera och sortera efter år (i fallande ordning).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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 ____;