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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  problème de jointure dans ma requette

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème de jointure dans ma requette

n°1902761
sinifer
Posté le 06-07-2009 à 16:38:17  profilanswer
 

Bonjours,
 
je voudrai faire une requete mysql mais j'arrive pas.
 
Ma requete doit me fournir un champs qui ce trouve sur la table olo mais d'abord je dois voir sur la table commande pour ma clause where
 
car je veu afficher par ordre décroissant les dates a lequel il y a eu la première commande et regroupé par commandes_type
 
quand j'ai fait comme sa:

Code :
  1. SELECT *  FROM `commandes` WHERE `commandes_type` LIKE '%olo%' group by commandes_type order by  commandes_date desc


 
sa me remet le résultat voulut mais quant je fais ma jointure pour avoir ma olo_type sa tourne et tourne juska demain
 
sachant que commandes_type est égale à olo_type
 
exemple j'ai dans ma table commandes air_force_olo et air_one
mais dans ma table commandes j'ai que ce qui finit ou commence par olo donc on va retouvé air_force_olo
 
je vous montre ma requete qui tourne encore a chaque modification
 

Code :
  1. SELECT e.olo_campaign  FROM commandes c, olo e
  2.  WHERE c.customers_id=e.customers_id and c.commandes_type=e.olo_campaign 
  3.  group by c.commandes_type order by c.commandes_date desc


 
j'espère que vous avez compris mon problème si quelqu'un peu m'aider pour cette requete ce serai gentile car j'esseil depuis 1h et là comme je trouve rien je vous demande votre avis merci

mood
Publicité
Posté le 06-07-2009 à 16:38:17  profilanswer
 

n°1902774
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-07-2009 à 16:50:29  profilanswer
 

Par pitié, arretez de faire des jointures avec WHERE, je vais finir par distribuer des baffes [:prozac]
 
1. Les jointures, c'est avec (LEFT|RIGHT|INNER) JOIN, pas avec WHERE, qui est une syntaxe dépassée et archi dépassée qui date de 1986
 
2. le GROUP BY ne sert à rien vu que tu n'utilises aucune fonction d'aggrégation
 
3. tu dis que commandes_type est égal à olo_type, et dans ton filtre, tu écris "AND c.commandes_type = e.olo_campaign"
 
Donc, réécris ta requête comme ceci :

Code :
  1. SELECT e.olo_campaign
  2. FROM commandes c INNER JOIN olo e ON c.customers_id = e.customers_id AND c.commandes_type = e.olo_type
  3. ORDER BY c.commandes_date DESC


---------------
J'ai un string dans l'array (Paris Hilton)
n°1902781
sinifer
Posté le 06-07-2009 à 17:00:56  profilanswer
 

Merci mais je sais pas pourquoi sa continue de tourné depuis 5 minute donc il doit y avoir une erreur??


Message édité par sinifer le 06-07-2009 à 17:01:17
n°1902784
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-07-2009 à 17:04:42  profilanswer
 

Syntaxiquement, la requête que je t'ai donnée est correcte. Après, si elle tourne dans le vide ou ne donne pas le résultat escompté, ça vient du fait qu'elle n'est pas adaptée à la structure de ta base.
Peux tu poster la structure des tables commandes et olo stp ? (champs, types de données, clés primaires et étrangères)


Message édité par Harkonnen le 06-07-2009 à 17:05:00

---------------
J'ai un string dans l'array (Paris Hilton)
n°1902947
sinifer
Posté le 07-07-2009 à 08:13:55  profilanswer
 

ma structure est la suivante:
 
table commandes:
 
commandes_id  commandes_date  customers_id  commandes_relance  commandes_montant  commandes_type  commandes_status
 
 
tables olo :
 
olo_id  customers_id  olo_keycode  olo_type  olo_status  olo_date
 
et dans olo_type et commandes_type il y a pratiquement les mêmes nom sauf que dans commandes_type il y a pas toujours des olo
 
ex: air_force_olo et air_one mais dans olo il y aura air_force_olo mais pas air_one


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

  problème de jointure dans ma requette

 

Sujets relatifs
[java] Problème d'optimisation de traitements batchProblème rafraichissement JTable
[RESOLU] Problème de vérouillage dans ma feuille excel[OK] problème d'éxécution du PHP sur mon serveur apache (sous centos)
au secours probleme joomla et Internet Explorer[résolu] probleme fopen : php_network_getaddresses
[imagemagick] problème pour récuperer la valeur d'un pixelProblème de choix de jointure
Problème d'accent pour une requête phpproblème de jointure entre deux requette séparé
Plus de sujets relatifs à : problème de jointure dans ma requette


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