[Résolu] Calcul de l'age avec une date de naissance

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
djtapagenocturne
Fraîchement OOthentifié
Messages : 4
Inscription : 24 mars 2007 15:04

[Résolu] Calcul de l'age avec une date de naissance

Message par djtapagenocturne »

Bonjour,
J'ai une bdd pour gerer mes adhérents et je souhaite à partir de la date de naissance afficher l'age de ceux ci en fonction de la date du jour. Comment faire? Quelqu'un peut m'aider svp

Merci
WIN XP Open Office 2.1
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Message par Pierre-Yves Samyn »

Bonjour

Ci-dessous un exemple pour une base HSQL :

Code : Tout sélectionner

SELECT "Nom", "Date naissance", 

CASE 
WHEN Month(CURRENT_DATE) < month("Date naissance") or ( Month(CURRENT_DATE) = Month("Date naissance") and day(CURRENT_DATE)<day("Date naissance") )   THEN 
		CAST((year(CURRENT_DATE) - year("Date naissance") -1) AS VARCHAR) || ' ans' 
ELSE
		CAST((year(CURRENT_DATE) - year("Date naissance") ) AS VARCHAR) || ' ans' 
END as "Age"

from "Table2"
Nota : CAST AS VARCHAR permet de convertir en texte
djtapagenocturne
Fraîchement OOthentifié
Messages : 4
Inscription : 24 mars 2007 15:04

Message par djtapagenocturne »

je mets ce code où ???
Je ne sais pas comment faire je débute sur cette application...
WIN XP Open Office 2.1
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Message par Pierre-Yves Samyn »

C'est le texte d'une requête sql. Donc il te suffit de créer une nouvelle requête dans ce mode et de ne pas oublier de cliquer sur le bouton "Exécuter directement" situé à droite de la barre d'outils.
Nota : ce bouton n'exécute pas directement la requête mais il indique à OOo comment il doit l'exécuter...
Le modérateur a écrit : :alerte: Reportez vous sur cette astuce pour l'évolution de ce calcul : http://user.services.openoffice.org/fr/ ... 81#p127981