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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL]Probleme de condition sur un SELECT

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL]Probleme de condition sur un SELECT

n°1801598
micky78
Get ripped or die tryin'
Posté le 17-10-2008 à 18:09:26  profilanswer
 

Bon il est possible que la solution soit simple et que vendredi tout çà .. bref
 
J ai un gros select avec plein de conditions sur 2 tables. Le soucis étant que pour le moment je n'ai pas une seule colonne commune entre ces 2 tables mais le rapprochement se fait avec 3 colonnes. Donc dans mon WHERE j'ai un beau :
 
 client.CP = periode.CP AND client.Codeclt = periode.Codeclt AND client.Enseigne = periode.Enseigne  
 
Grace à ces 3 conditions j'arrive a retrouver mes petits.
 
Mais çà se corse :
une des colonne selectionnées dans la table "periode" est une date, dans mon WHERE j'ai une autre des conditions qui est periode.Fin >= $daydate (pas besoin de vous l expliquer:o)
 
Jusque là tout va toujours bien dans le meilleur des mondes.
 
Maintenant j'aimerai extraire uniquement les 2 dates de "periode.Fin" les plus proche par magasin(sachant qu ici un magasin a une table client et une table periode donc, qui sont rapprochées comme expliqué plus haut par 3 conditions (oui je sais c'est moche mais çà c'est pas ma faute et ca sera corrigé prochainement)).
J ai laissé tomber le LIMIT puisque çà tri uniquement le résultat de toute la requête et non uniquement sur un critère.
 
Bref je crois que je suis marron ?

mood
Publicité
Posté le 17-10-2008 à 18:09:26  profilanswer
 

n°1801610
MagicBuzz
Posté le 17-10-2008 à 19:04:25  profilanswer
 

fonction analytique rank combinée avec un having. ça devrait le faire.
 
ou alors la bonne méthode du sous-select avec un limit 2 pour chaque magasin

n°1801611
micky78
Get ripped or die tryin'
Posté le 17-10-2008 à 19:05:22  profilanswer
 

Tu peux expliquer stp ?

n°1801630
MagicBuzz
Posté le 17-10-2008 à 19:58:02  profilanswer
 

ben t'as des fonctions selon les sgbd (mysql en a il me semble) qui permet par exemple d'établir un rang de lignes selon un critère de regroupement et un critère de tri.
 
genre group by client order by date. et ça va par exemple, pour la fonction rank() te donner un compteur de ligne 1, 2, 3 etc.
 
du coup t'as juste à coller un having rank() <= 2 et zou.
 
sinon, t'as toujours la solution des sous-requêtes comme je dis.
 
dans les deux cas, ça reste assez sioux à écrire


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

  [SQL]Probleme de condition sur un SELECT

 

Sujets relatifs
[Access 2007] Problème de relations de tablesPetit problème avec $_FILES
Turbo c++ : probleme de linkeur?Select + remplissage du formulaire
Problème MCD vers MPD sur PowerAMCProbleme avec texte cliquable+description qui apparait en dessous
[MSSQL] Requete select plus précise [Résolu]Problème d'apostrophe PHP et SQL SERVER
Probleme Affichage Background dans Tableau 
Plus de sujets relatifs à : [SQL]Probleme de condition sur un SELECT


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