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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MySQL-résolu] apprécierais aide sur requete

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MySQL-résolu] apprécierais aide sur requete

n°557918
deliriumtr​emens
sic transit intestinal...
Posté le 03-11-2003 à 18:10:33  profilanswer
 

Soit un annuaire de sites
 
Avec
-1 table sites (id, url, sitefr...)
-1 table langue_site (id_langue, id_site) où id_site correspond à id de la table sites et id_langue a des valeurs de 1 à 4 (fr-de-it-en, classique)-> il peut y avoir jusqu'à 4X le même id_site dans cette table.
 
 
Parmi les possibilités de recherche, j'aimerais pouvoir proposer une recherche permettant de combiner les langues (genre : site fr/de, fr/it/en)...
 
Pour l'instant, je n'ai pas pu faire mieux que ça

Code :
  1. SELECT DISTINCT id, url, sitefr,  FROM sites, langue_site WHERE sites.id=langue_site.id_site AND langue_site.id_langue IN (1 , 2) ORDER BY sitefr
  2. -> "fr OU de" avec cette solution, pas "fr ET de"


(je n'ai mis que la partie concernant la langue, la recherche se fait aussi sur d'autres champs de la table sites).
 
Suis relativement pive au niveau SQL, -> si vous aviez une piste...


Message édité par deliriumtremens le 04-11-2003 à 08:35:36
mood
Publicité
Posté le 03-11-2003 à 18:10:33  profilanswer
 

n°557988
gizmo
Posté le 03-11-2003 à 18:55:36  profilanswer
 

version brouillon:
 
select id, url, sitefr
from site, langue l1, langue l2
where site.id=l1.id_site
and l1.id_langue=1
and l1.id_site=l2.id_site
and l2.id_langue=2

n°558223
MagicBuzz
Posté le 03-11-2003 à 23:23:38  profilanswer
 

j'ai pas bien compris ce que tu cherches à faire.
 
mettons que je désire un site contenant le mot "mysql" dans le nom et qui soit soit fr soit en.
 
Mettons que dans la base t'as 10 sites contenant ce mot, dont 4 en fr, 2 en it, 2 en en, 1 en de, et 1 à la fois en fr et en en.
 
Tu veux quoi comme résultat ?
 
site 1 (fr)
site 2 (fr)
site 3 (fr)
site 4 (fr)
site 5 (en)
site 6 (en)
site 7 (fr/en)
 
C'est ça ? (les valeurs entre parenthèse ne sont pas affichée)
 
A ce moment, ta requête me semble bonne non ? Elle retourne quoi ?


Message édité par MagicBuzz le 03-11-2003 à 23:24:30
n°558349
deliriumtr​emens
sic transit intestinal...
Posté le 04-11-2003 à 08:35:21  profilanswer
 

->Merchi Gizmo,  c'est parfait.
(j'avais tenté un truc du genre, sans penser à refaire le ln.id_site=sites.id à chaque fois, sot que je suis).
 
->Magic : le but était de choisir 1 à 4 langues, mais combinées par ET plutôt que OU


Message édité par deliriumtremens le 04-11-2003 à 08:37:30

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

  [MySQL-résolu] apprécierais aide sur requete

 

Sujets relatifs
pb avec CRecordset, Ctime et Update() [RESOLU]copie mysql
Logiciel pour les fichiers d'aide *.chm[PHP/MySQL] - cohabitation de deux requetes dans une meme table ?
Petite question idiote sur requete sqlrequete tt simple ki me renvoi rien (gro nioub)
[Résolu]Probleme de traitement de chaine de caractereRequete trop trop lente sous Postgres
UTF8 et xhtml, besoin d'aide :)[PHP/MySql] Comment faire cette requete ?
Plus de sujets relatifs à : [MySQL-résolu] apprécierais aide sur requete


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