Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1685 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requetes imbriquées

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requetes imbriquées

n°1417268
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 10:34:18  profilanswer
 

bonjour à tous ;
 
voila mon probleme je fais un moteur de recherche interne a mon site et lorsque j effectue une recherche multi-criteres je dois imbriqués 2 requetes SQL ..
 
Je n arrive pas a réaliser cela ( surement du fait que je suis nul en SQL  :D )
 
Donc j aurai besoin d aide pour imbriquer les 2 requetes suivantes :  :)  
 
Requete 1 :

Code :
  1. $query_titre = "SELECT  * FROM carnet_voyage
  2. WHERE titre_carnet_voyage LIKE \"%$Mot%\"
  3. OR titre_carnet_voyage LIKE \"%$Mot%\" ORDER by id_carnet_voyage ASC";


 
Requete 2 :

Code :
  1. $query_date_voyage = "SELECT  * FROM carnet_voyage
  2. WHERE date_voyage LIKE \"%$date_v%\"
  3. OR date_voyage LIKE \"%$date_v%\" ORDER by id_carnet_voyage ASC";


 
 
Merci d'avance
 

mood
Publicité
Posté le 01-08-2006 à 10:34:18  profilanswer
 

n°1417271
betsamee
Asterisk Zeperyl
Posté le 01-08-2006 à 10:38:40  profilanswer
 

ce que tu veux faire est pas une imbrication mais bien une requete simple avec plusieurs criteres
ton where doit ressembler a ca;

Code :
  1. where (titre_carnet_voyage LIKE \"%$Mot%\"OR titre_carnet_voyage LIKE \"%$Mot%\" ) and (date_voyage LIKE \"%$date_v%\"OR date_voyage LIKE \"%$date_v%\" ) ORDER by id_carnet_voyage ASC";


mais a mon humble avis lis les 10 premieres lignes d un tuto SQL

Message cité 1 fois
Message édité par betsamee le 01-08-2006 à 10:39:10
n°1417272
flo850
moi je
Posté le 01-08-2006 à 10:39:22  profilanswer
 

je ne vois pas pourquoi , ni comment tu veux les imbriquer
qu'est ce que tu cherche comme résultat ?

n°1417284
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 11:02:28  profilanswer
 

betsamee a écrit :

ce que tu veux faire est pas une imbrication mais bien une requete simple avec plusieurs criteres
ton where doit ressembler a ca;

Code :
  1. where (titre_carnet_voyage LIKE \"%$Mot%\"OR titre_carnet_voyage LIKE \"%$Mot%\" ) and (date_voyage LIKE \"%$date_v%\"OR date_voyage LIKE \"%$date_v%\" ) ORDER by id_carnet_voyage ASC";


mais a mon humble avis lis les 10 premieres lignes d un tuto SQL


 
ah oui je pense que c'est cela je vais aller tester de suite , mais désolé peut etre que j utilise les mauvais termes en SQL car je suis une vrai Bille dans cas dsl  
 
Merc

n°1417285
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 11:03:43  profilanswer
 

flo850 a écrit :

je ne vois pas pourquoi , ni comment tu veux les imbriquer
qu'est ce que tu cherche comme résultat ?


 
je veux afficher les resultats que mon moteur de recherche interne et trouver par rapport aux champs saisis par l utilisateur ( dans se cas par -> titre_carnet_voyage et date_voyage)

n°1417287
betsamee
Asterisk Zeperyl
Posté le 01-08-2006 à 11:05:48  profilanswer
 

je repond a ta question 4 posts plus haut

n°1417289
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 11:08:11  profilanswer
 

betsamee , je repondais a la question de flo850:d et merci pour ton aide
impecc ça marche Merciiiiiiiiiiiiiii :bounce:

Message cité 1 fois
Message édité par mitch46000 le 01-08-2006 à 11:09:55
n°1417295
betsamee
Asterisk Zeperyl
Posté le 01-08-2006 à 11:13:38  profilanswer
 

mitch46000 a écrit :

betsamee , je repondais a la question de flo850:d et merci pour ton aide
impecc ça marche Merciiiiiiiiiiiiiii :bounce:


:jap:
 
honnetement tu devrais te former un minimum au sql parcequ la c'est la base de la base

n°1417297
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 11:16:46  profilanswer
 

oui je compte le faire mais je chercher aux mauvaises endroit aussi donc voila....

n°1417528
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 15:47:18  profilanswer
 

re coucou c moi !!! dit je n arrive pas a concaténé mes 2 requetes quelqu un pourrait il me REaidé car le bloque complet voila mon code :
 

Code :
  1. $titre_carnet_voyage = $_POST['titre_carnet_voyage'];//valeur du titre carnet de voyage
  2. $commentaire_carnet_voyage = $_POST['commentaire_carnet_voyage'];
  3. $rechercher='';
  4. if ($_POST['Rechercher_carnet_voyage']=="Rechercher" )
  5. {
  6. if ($titre_carnet_voyage == "" ){
  7. // cas ou mon champs titre_carnet est vide    
  8. }
  9. else{
  10. $rechercher. = "titre_carnet_voyage LIKE \"%$titre_carnet_voyage%\" ";
  11. }
  12. if ($commentaire_carnet_voyage == "" ){
  13. // cas ou mon champs titre_carnet est vide  
  14. }
  15. else{
  16. $rechercher.= "commentaire_carnet_voyage LIKE \"%$commentaire_carnet_voyage%\" ";
  17. }
  18. $rechercher. =  " SELECT * FROM carnet_voyage
  19. WHERE  ($rechercher)ORDER by id_carnet_voyage ASC";
  20. }


 
voila mon code (surement faux car j ai des erreurs)
 
En gros j au petit moteur de recherche dans ma base et je veus selon les cas ou je saisi titre et commentaire ou pas m affiche les resultats
 
Pour mieux comprendre :
 
si rien saisie --------------------------> message d erreur (cela est deja gérer)
si titre "et" commentaire sont saisies ---> affichage du resultats selon les valeurs rentrés par l utilisateur  
si QUE titre est saisie -----------> affichage du resultat selon la valeur de titre
si QUE commentaire est saisie ---> affichage du resultat selon la valeur de commentaire  

mood
Publicité
Posté le 01-08-2006 à 15:47:18  profilanswer
 

n°1417533
flo850
moi je
Posté le 01-08-2006 à 15:51:38  profilanswer
 

remplace  
$rechercher. = " condition ";  
par  
$rechercher. = " AND condition ";  
 
et
 
$rechercher =  " SELECT * FROM carnet_voyage WHERE  ($rechercher)ORDER by id_carnet_voyage ASC";  
par  
$rechercher =  " SELECT * FROM carnet_voyage WHERE  1 ($rechercher)ORDER by id_carnet_voyage ASC";  
 
au passage tu as mis un . en trop quand tu  contruit ta requete a la fin
 
une habitude a prendre quand la rquete ne marche pas est de faire afficher la requete construite

Message cité 1 fois
Message édité par flo850 le 01-08-2006 à 15:52:00
n°1417568
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 16:15:32  profilanswer
 

flo850 a écrit :

remplace  
$rechercher. = " condition ";  
par  
$rechercher. = " AND condition ";  
 
et
 
$rechercher =  " SELECT * FROM carnet_voyage WHERE  ($rechercher)ORDER by id_carnet_voyage ASC";  
par  
$rechercher =  " SELECT * FROM carnet_voyage WHERE  1 ($rechercher)ORDER by id_carnet_voyage ASC";  
 
au passage tu as mis un . en trop quand tu  contruit ta requete a la fin
 
une habitude a prendre quand la rquete ne marche pas est de faire afficher la requete construite


 
ok je vais tester tout çà mais le "1" dans mon SELECT il sert a quoi :??:  

n°1417576
flo850
moi je
Posté le 01-08-2006 à 16:20:05  profilanswer
 

ca evite de se poser la question : "est ce que c'est la premier condition ou pas? "  
si c'est la premeire alors je fais $recherche .=" condition" , sinon, je fais $recherche?="  AND condition"  

n°1417586
mitch46000
Allez c'est partie !
Posté le 01-08-2006 à 16:27:23  profilanswer
 

Merci bien je pense qu a l avenir cela va me servir :d MERCI BEAUCOUP

n°1417620
pains-aux-​raisins
Fatal error
Posté le 01-08-2006 à 17:29:10  profilanswer
 

flo850 a écrit :

ca evite de se poser la question : "est ce que c'est la premier condition ou pas? "  
si c'est la premeire alors je fais $recherche .=" condition" , sinon, je fais $recherche?="  AND condition"


Plutôt que simplement un 1 (MySQL ?), une vraie expression booléenne 1=1 serait plus correcte et plus portable.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requetes imbriquées

 

Sujets relatifs
Accès requêtes access via VB6Excel et les requetes web via un proxy
requetes imbriquées[Débutant]Requetes imbriquées
SQL et requetes imbriquéesMySql accepte-t'il les requêtes imbriquées ?
Quelle version de MySql pour les requêtes imbriquées?requetes imbriquées en SQL avec mysql
JAVA : Erreur avec 2 requêtes imbriquées :'-|[RESOLU] [SQL] Limiter le nombre de requetes imbriquées
Plus de sujets relatifs à : Requetes imbriquées


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR