sql >> Database teknologi >  >> RDS >> PostgreSQL

Få ugenummeret fra en dato i PostgreSQL

I PostgreSQL kan du bruge extract() funktion for at få ugenummeret fra en dato.

Du kan også bruge date_part() funktion til at gøre det samme.

Eksempel 1:Extrakt()-funktionen

Her er et eksempel på brug af extract() funktion til at udtrække ugen fra en dato.

VÆLG uddrag (uge fra dato '2020-12-27') SOM "Ugenummer";

Resultat:

 Ugenummer ------------- 52

Eksempel 2:Date_part()-funktionen

Sådan gør du det samme ved at bruge date_part() funktion.

SELECT date_part('uge', dato '2020-12-27') SOM "Ugenummer";

Resultat:

 Ugenummer ------------- 52

Eksempel 3:Om ISO-ugenummersystemet

Hvis du får resultater, du ikke havde forventet, kan det være på grund af den måde, ISO-ugenummerering er defineret på.

ISO-uger starter om mandagen, og den første uge i et år indeholder den 4. januar det pågældende år. Derfor er det muligt, at datoer i begyndelsen af ​​januar er en del af den 52. eller 53. uge i det foregående år, og at datoer i slutningen af ​​december er en del af den første uge i det næste år.

Eksempel:

VÆLG uddrag (uge fra dato '2021-01-03') AS "2021-01-03", uddrag (uge fra dato '2021-01-04') AS "2021-01-04"; 

Resultat:

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

I dette tilfælde er den 3. januar 2021 faktisk stadig en del af den sidste uge af 2020. Den første uge af 2021 starter først den 4. januar.

Nedenfor er et andet eksempel, der viser, at en dato i slutningen af ​​året er en del af den første uge i det følgende år.

VÆLG uddrag (uge fra dato '2024-12-29') AS "2024-12-29", uddrag (uge fra dato '2024-12-30') AS "2024-12-30"; 

Resultat:

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

I dette tilfælde er den 29. december 2024 en del af den sidste uge af 2024, men så snart vi når den 30. december, er vi i den første uge af 2025.


  1. Sådan forbinder du Android med MySQL ved hjælp af Mysql JDBC-driver

  2. Linux - PHP 7.0 og MSSQL (Microsoft SQL)

  3. Hvad maskinlæring betyder for databaseprofessionelle

  4. Hovedanvendelse af sys.dm_os_wait_stats