Extraire anniversaires du jour

Résolu/Fermé
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 - 20 oct. 2017 à 09:54
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 - 20 oct. 2017 à 11:52
Bonjour,

J'ai besoin d'extraire toutes les personnes dont c'est l'anniversaire.

Pour cela j'ai un champ dat_born dont les valeurs sont de ce type '12/05/1968'

Ce que je n'arrive pas a comprendre est comment extraire toutes les dates anniversaire du jour sachant que je ne peux utiliser que le jour et le mois!

Merci.


A voir également:

3 réponses

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié le 20 oct. 2017 à 11:03
Bonjour,

Tes dates sont stockées sous forme de chaînes de caractères ? Dans ce cas tu peux utiliser la fonction substring (doc : https://www.postgresql.org/docs/9.1/functions-string.html
substring(dat_born from 0 for 5)


Xavier
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
Modifié le 20 oct. 2017 à 11:33
Elles sont stockées sous forme de dates ( champ type date).

select dat_born from table where substring(dat_born from 0 for 5);
ERREUR: la fonction pg_catalog.substring(date, integer, integer) n'existe pas
LIGNE 1 : select dat_born from table where substring(dat_b...



Merci
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
20 oct. 2017 à 11:37
Bonjour,

Dans ce cas, tu peux utiliser Extract : https://docs.postgresql.fr/8.2/functions-datetime.html#functions-datetime-extract et CURRENT_DATE pour comparer les jours et les mois.

Xavier
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
20 oct. 2017 à 11:39
(Pour préciser)
SELECT * FROM table WHERE
    EXTRACT(DAY FROM Current_date) = EXTRACT(DAY FROM Dat_born)
    AND EXTRACT(MONTH FROM Current_date) = EXTRACT(MONTH FROM Dat_born)
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
20 oct. 2017 à 11:52
Merci a tous. J'ai finalement trouvé en faisant comme cela.

and date_part('day', p.dat_born) = date_part('day', current_date) and date_part('month', p.dat_born)= date_part('month', current_date)
0