EXTRACT()
DSQL, PSQL
EXTRACT (<part> FROM <datetime>) <part> ::= YEAR | MONTH | WEEK | DAY | WEEKDAY | YEARDAY | HOUR | MINUTE | SECOND | MILLISECOND | TIMEZONE_HOUR | TIMEZONE_MINUTE
Paramètre | Description |
---|---|
part |
Composante date/heure. |
datetime |
Une expression de type |
SMALLINT
ou NUNERIC
.
La fonction EXTRACT
extrait les composants de date et d’heure des types de données DATE
, TIME
et TIMESTAMP
.
Composant date/heure | Type | Plage | Commentaire |
---|---|---|---|
|
|
1–9999 |
L’année |
|
|
1-4 |
Trimestre |
|
|
1–12 |
Mois |
|
|
1–53 |
Numéro de la semaine de l’année |
|
|
1–31 |
Jour |
|
|
0–6 |
Jour de la semaine. 0 — Dimanche |
|
|
0–365 |
Le numéro du jour de l’année. 0 = 1 janvier |
|
|
0–23 |
Heure |
|
|
0–59 |
Minute |
|
|
0.0000–59.9999 |
Secondes. Inclut les millisecondes |
|
|
0.0–999.9 |
Millisecondes |
|
|
de -14 à +14 |
Décalage des heures du fuseau horaire |
|
|
de -59 à +59 |
Décalage des minutes du fuseau horaire |
Note
|
Si le composant date/heure n’est pas présent dans l’argument date/heure, par exemple SECOND dans un argument de type DATE ou YEAR dans TIME, la fonction provoquera une erreur. |
À partir d’un argument de type DATE
ou TIMESTAMP
, vous pouvez extraire le numéro de la semaine. Selon la norme ISO-8601, la semaine commence le lundi et comprend toujours 7 jours. La première semaine de l’année est celle qui compte le plus de jours dans la nouvelle année (au moins 4) : les jours 1-3 peuvent appartenir à la semaine précédente (52 ou 53) de l’année précédente. Par analogie, les jours 1-3 de l’année en cours peuvent appartenir à la semaine 1 de l’année suivante.
EXTRACT
/* récupérer le numéro du trimestre par la date */
SELECT (EXTRACT(MONTH FROM CURRENT_TIMESTAMP)-1)/3+1
FROM RDB$DATABASE