Sélection php selon plusieurs critères
Résolu
t671
Messages postés
1476
Date d'inscription
Statut
Membre
Dernière intervention
-
t671 Messages postés 1476 Date d'inscription Statut Membre Dernière intervention -
t671 Messages postés 1476 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ma base contient des noms, et des dates (naissance et décès) sous différent format (jj.mm.aaaa, ou <jj.mm.aaaa, ou vers aaaa, .....). Je me base sur l'année (aaaa) pour gérer et rechercher des dates.
Je veux afficher les noms (affiché selon la première lettre) , avec l'année (aaaa) la plus petite et la plus grande selon une fourchette d'année.
Si j'écris ceci (sans la fourchette de l'année recherchée), ça fonctionne :
Mais main,tenent, je n'arrive pas inclure dans la requête la fourchette de l'année recherchée. J'ai essayé ceci
mais il y a une erreur de syntaxe
Erreur : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS date > "1599", MAX( RIGHT(date_dc, 4) ) AS datedc < "1801" FROM ville_b' at line 1
Comment faire ???
Merci.
Ma base contient des noms, et des dates (naissance et décès) sous différent format (jj.mm.aaaa, ou <jj.mm.aaaa, ou vers aaaa, .....). Je me base sur l'année (aaaa) pour gérer et rechercher des dates.
Je veux afficher les noms (affiché selon la première lettre) , avec l'année (aaaa) la plus petite et la plus grande selon une fourchette d'année.
Si j'écris ceci (sans la fourchette de l'année recherchée), ça fonctionne :
$select = 'SELECT nom,COUNT(*) AS nb, MIN( RIGHT(date_naissance, 4) ) AS date, MAX( RIGHT(date_dc, 4) ) AS datedc FROM ville_bis WHERE nom LIKE "'.mysql_real_escape_string(A).'%" GROUP BY nom ORDER BY nom ASC';
Mais main,tenent, je n'arrive pas inclure dans la requête la fourchette de l'année recherchée. J'ai essayé ceci
$select = 'SELECT nom,COUNT(*) AS nb, MIN( RIGHT(date_naissance, 4) ) > AS date > "1599", MAX( RIGHT(date_dc, 4) ) AS datedc < "1801" FROM ville_bis WHERE nom LIKE "'.mysql_real_escape_string(A).'%" GROUP BY nom ORDER BY nom ASC';
mais il y a une erreur de syntaxe
Erreur : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS date > "1599", MAX( RIGHT(date_dc, 4) ) AS datedc < "1801" FROM ville_b' at line 1
Comment faire ???
Merci.
A voir également:
- Sélection php selon plusieurs critères
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- L'indice n'appartient pas à la sélection vba ✓ - Forum VB / VBA
- Inverser selection excel - Forum Excel
- Php alert ✓ - Forum PHP
4 réponses
Salut!
Essai avec ça:
Essai avec ça:
$select = 'SELECT nom,COUNT(*) AS nb, MIN( RIGHT(date_naissance, 4) ) > AS date BETWEEN "1599", AND MAX( RIGHT(date_dc, 4) ) AS datedc "1801" FROM ville_bis WHERE nom LIKE "'.mysql_real_escape_string(A).'%" GROUP BY nom ORDER BY nom ASC';
Merci pour ton aide, mais j'ai l'erreur Erreur : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS date BETWEEN "1599", AND MAX( RIGHT(date_dc, 4) ) AS datedc "1801" FROM vill' at line 1
Snifffffffffff ...........
Snifffffffffff ...........
$select = 'SELECT nom,COUNT(*) AS nb, MIN( RIGHT(date_naissance, 4) ) AS date BETWEEN "1599", AND MAX( RIGHT(date_dc, 4) ) AS datedc "1801" FROM ville_bis WHERE nom LIKE "'.mysql_real_escape_string(A).'%" GROUP BY nom ORDER BY nom ASC';
Ben non .... Erreur : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BETWEEN "1599", AND MAX( RIGHT(date_dc, 4) ) AS datedc "1801" FROM ville_bis WHE' at line 1
J'ai essayé
mais c'est pareil, ça fonctionne pas .........
J'ai essayé
$select = 'SELECT nom,COUNT(*) AS nb, MIN( RIGHT(date_naissance, 4) ) AS date BETWEEN "1599" AND "1801", AND MAX( RIGHT(date_dc, 4) ) AS datedc BETWEEN "1599" AND "1801" FROM ville_bis WHERE nom LIKE "'.mysql_real_escape_string(A).'%" GROUP BY nom ORDER BY nom ASC';}
mais c'est pareil, ça fonctionne pas .........