Re: Meilleure solution pour faire une recherche multi criteres | Sujet: Re: Meilleure solution pour faire une recherche multi criteres par R&B sur 11/4/2006 12:51:48
Bonjour
Prenons par exemple une recherche sur le nom prénom dans une fiche élève...
Cela donnera :
sSQL est une chaine = "SELECT * FROM ELEVE WHERE "
// on complete alors la condition selon le remplissage des critères
SI (SAISNOMDEBUT<>"" ET SAISNOMFIN<>"") ALORS
sSQL += " NOM BETWEEN '" + SAISNOMDEBUT + "' AND '" + SAISNOMFIN +"'"
SINON
SI SAISNOMFIN="" ALORS
// QUE debut, on prends les noms contanent la chaine (voirs la clause LIKE et les %)
sSQL += " NOM LIKE '%" + SAISNOMDEBUT + "%'"
FIN
FIN
on peut compléter avec le choix sur le prénom
Exécution de la requete :
sSQL est une Source de Données
SI PAS hExécuteRequêteSQL(sSQL,hRequeteDefaut,cSQL) alors
Erreur(hErreurInfo())
SINON
// Envois le résultat dans une table mémoire
hLitPremier(sSQL)
TANTQUE pas hEnDehors(sSQL)
info(sSQL.NOM,sSQL.PRENOM)
hLitSuivant(sSQL)
FIN
// libère la source de données
hAnnuleDéclaration(sSQL)
Voila... A vous de constituer progressivement la syntaxe de votre requête en fonction de vos critères de sélection.
un petit plus : pour ajouter les AND entre les conditions du where.
Si cSQL<>"" alors sSQL+= " AND "
cSQL+= "...condition..."
|
|
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
|