sql >> Databáze >  >> RDS >> PostgreSQL

Získejte číslo týdne z data v PostgreSQL

V PostgreSQL můžete použít extract() funkce pro získání čísla týdne z data.

Můžete také použít date_part() funkci udělat totéž.

Příklad 1:Funkce extract()

Zde je příklad použití extract() funkce extrahovat týden z data.

SELECT extrakt (týden od data '2020-12-27') AS "Číslo týdne";

Výsledek:

 Číslo týdne ------------- 52

Příklad 2:Funkce date_part()

Zde je návod, jak provést stejnou věc pomocí date_part() funkce.

SELECT date_part('week', date '2020-12-27') AS "Číslo týdne";

Výsledek:

 Číslo týdne ------------- 52

Příklad 3:O systému týdenního číslování ISO

Pokud získáte výsledky, které jste neočekávali, může to být způsobeno tím, jak je definováno číslování týdnů podle normy ISO.

Týdny ISO začínají v pondělí a první týden v roce obsahuje 4. leden daného roku. Proto je možné, že data na začátku ledna budou součástí 52. nebo 53. týdne předchozího roku a data na konci prosince budou součástí prvního týdne příštího roku.

Příklad:

SELECT extrakt (týden od data '2021-01-03') AS "2021-01-03", extrakt (týden od data '2021-01-04') AS "2021-01-04"; 

Výsledek:

 2021-01-03 | 2021-01-04 -------------+------------ 53 | 1

V tomto případě je 3. leden 2021 stále součástí posledního týdne roku 2020. První týden roku 2021 začíná až 4. ledna.

Níže je uveden další příklad, který ukazuje, že datum na konci roku je součástí prvního týdne následujícího roku.

SELECT extrakt (týden od data '2024-12-29') AS "2024-12-29", extrakt (týden od '2024-12-30') AS "2024-12-30"; 

Výsledek:

 29. 12. 2024 | 2024-12-30 -------------+------------ 52 | 1

V tomto případě je 29. prosinec 2024 součástí posledního týdne roku 2024, ale jakmile se dostaneme k 30. prosinci, jsme v prvním týdnu roku 2025.


  1. Zrychlí přidání 'LIMIT 1' do MySQL dotazů, když víte, že bude pouze 1 výsledek?

  2. Konfigurace v rozsahu databáze SQL Server a automatická oprava plánu

  3. Jak váš ovladač Oracle ODBC načte klienta Oracle?

  4. Jaké je umístění klienta mysql .my.cnf v XAMPP pro Windows?