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

  FORUM HardWare.fr
  Programmation
  PHP

  requete sql compliquee

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

requete sql compliquee

n°1811056
kaking
Posté le 12-11-2008 à 11:10:32  profilanswer
 

voilou, j'ai deux tables, clients et service... les deux sont liés par l'id, et un clients.id peut etre egal a plusieurs service.id_user
 
alors voila ca que je desirerais faire en une seule requete...
 
 
selectionner autant de fois le client qu'il y a de clients.id=service.id_user
avec tous les champs de clients et de service...
 
si un client n'a pas de service il faut quand meme le selectionner -donc utiliser left join et non inner.
 
 
mais mes connaissances etant assez limitées en jointure -bien que j'apprenne a m'en servir de plus en plus, je sollicite donc votre aide
 
 
quand je fais cette requete
 
 
 

Code :
  1. SELECT *
  2. FROM clients c
  3. LEFT OUTER JOIN service s ON c.id = s.id_user


 
 
 
ca marche....
 
maintenant quand j'essaye de regarder si dans tous ce bazar y'en a ou le champs ville='lamorlaye', he bah si je fais ceci

Code :
  1. SELECT *
  2. FROM clients c
  3. LEFT OUTER JOIN service s ON c.id = s.id_user where
  4. c.contact LIKE '%%' 
  5. and c.commercial LIKE '%%'
  6. and c.service_com LIKE '%%' 
  7. and s.nom LIKE '%%'
  8. and s.prenom LIKE '%%'
  9. and c.dpt LIKE '%%'
  10. and c.statut_com LIKE '%%'
  11. and c.prestation LIKE '%%'
  12. and c.compte LIKE '%moyen%'
  13. and c.ville LIKE '%lamorlaye%'

 
 
 
ca affiche seulement ceux qui ont un c.id = s.id_user et pas les autres ce que j'arrive pas a comprendre pourquoi....
 
 
merci d'avance  :)  

mood
Publicité
Posté le 12-11-2008 à 11:10:32  profilanswer
 

n°1811102
flo850
moi je
Posté le 12-11-2008 à 12:03:59  profilanswer
 

a quoi servent les LIKE '%%' ?  
 
de plus, comme tu fais s.nom LIKE '%%' et s.prenom LIKE '%%', ça exclue ceux qui ont des lignes a null dans la table service ( client qui n'ont aucun service )  
essaye ça

Code :
  1. SELECT *
  2. FROM clients c
  3. LEFT OUTER JOIN service s ON c.id = s.id_user WHERE
  4. AND c.compte LIKE '%moyen%'
  5. AND c.ville LIKE '%lamorlaye%'


 


---------------

n°1811132
kaking
Posté le 12-11-2008 à 13:47:51  profilanswer
 

a quoi servent les LIKE '%%' ?  
 
 
because que y'a tout un tas de champs et qu'on remplit les champs qu'on veux....  
 
 
ainsi dans la meme requete je peux pas mettre  
 

Code :
  1. SELECT *FROM clients c
  2. LEFT OUTER JOIN service s ON c.id = s.id_user WHERE
  3. c.compte LIKE '%moyen%'
  4. AND c.ville LIKE '%lamorlaye%'
  5. AND s.nom LIKE '%%'

?


Message édité par kaking le 12-11-2008 à 13:48:48
n°1811155
flo850
moi je
Posté le 12-11-2008 à 14:24:59  profilanswer
 

c'est sale ,  
lors de la construction de ta requete , tu peux faire mieux :  

Code :
  1. $requete = "SELECT *
  2. FROM clients c
  3. LEFT OUTER JOIN service s ON c.id = s.id_user WHERE 1=1";
  4. if(!empty($_GET['compte'])
  5. {
  6.    $requete .= " AND c.compte LIKE '%".mysql_real_escape_string($_GET['compte'])."'" ;
  7.  
  8. }
  9.  
  10. //et ainsi de suite


---------------

n°1811170
kaking
Posté le 12-11-2008 à 14:42:28  profilanswer
 

....
 
 
:)  :sol:  
 
pas bete, je m'y attelle de suite!
 
merci beaucoup pour ton aide!


Message édité par kaking le 12-11-2008 à 14:43:04

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  requete sql compliquee

 

Sujets relatifs
besoin d'aide (avant 15h :/) requete SQL compliquéerequete sql compliquée
[résolu] Besoin d'aide pour écrire une requête SQL compliquéeStructure de requete compliquée HELP PLEASE
Access, requète un peu compliquée...une requete assez compliquée
A L'AIDE: requête sql trop compliquée pour moi ![Access]Je bloque sur une requête qui ne me semblait pas compliquée...
[ACCESS] Requete SQL compliquée :([MySQL] Requête assez compliquée
Plus de sujets relatifs à : requete sql compliquee


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