AIDE SQL

Petit nouveau ! | 2 Messages

26 oct. 2012, 03:29

bonjour , je suis debutant dans sql et en francaise, j'ai besoin aide pour une requete..
j'ai une table T1 avec 3 col ( idnom, nom, anneebrith)
1. jp 1945
2. sr 1985
ect
je dois chercher les nom qui ont plus de 25ans ..
je faise

select * from T1 where anneebrith >25

mais ca marche pas..
merci pour aide

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

26 oct. 2012, 08:15

Salut,

Suivant le type de champ il faut faire un calcul.

Cherche un cours sur les calculs de date en SQL ;)

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 2 Messages

26 oct. 2012, 14:08

salut,
j'essayer mais je ne rien trouvez pour calculer les annee, :(

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

26 oct. 2012, 20:34

As tu essayé avec les fonction extract et now ?

Le truc c'est de faire la différence entre l'année de la date du jour et celle de ton champs, les fonctions year et now te le permettent


tous est la http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html

par exemple : select extract(year from ladate), extract( year from now())- lechiffre from test;


@+
Il en faut peu pour être heureux ......

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

04 nov. 2012, 11:46

Le plus rapide est de calculer l'année en dessous de laquelle les personnes ont plus de 25 ans.
Nous sommes en 2012, donc ceux qui sont nés avant 2012 - 25 = 1987 ont plus de 25 ans.

Il suffit alors de lancer la requête :
SELECT nom
FROM T1
WHERE anneebirth <=1987
Mais sans oublier que dans 2 mois, il faudra recalculer : 2013 - 25 = 1988

D'où l'intérêt de rendre ce calcul automatique... ;)