IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

sql pb requete


Sujet :

Langage SQL

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Points : 166
    Points
    166
    Par défaut sql pb requete
    Bonjour, voila je travaille avec sql server, en gros j'ai trois table:
    langue(langue_id, langue_lib)
    enseigne(ens_id, ens_lib)
    page(page_id, #langue_id, #ens_id, page nom)

    de tel sorte que je peux avoir une page avec
    1, 'fr', 1, home
    1, 'es', 1, home
    1, 'en', 1, home
    2, 'fr', 1, accueil
    2, 'es', 1, accueil
    2, 'en', 1, accueil


    Et donc moi j'ai un programme dans le quel je recois l'id de l'enseigne, l'id de la langue, et je voudrais retourner toutes les pages de cette enseigne qui n'ont pas la langue...
    en gros si je fais avec 'es' et l'enseigne 1, ici dans l'exemple il ne devrait rien me renvoyer, mais supposons que j'ai du chinois(ch) alors la cela devrait me renvoyer juste 1 home, 2 accueil, voila si quelqu'un pouvait m'aider...
    D'avance merci!!

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Testé sous Oracle 10gR1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    10g SOC5> create table dvp(page_id number(2), langue_id varchar2(2), ens_id number(1), page_nom varc
    har2(30));
     
    Table créée.
     
    10g SOC5> insert into dvp values(1, 'fr', 1, 'home');
     
    1 ligne créée.
     
    10g SOC5> insert into dvp values(1, 'es', 1, 'home');
     
    1 ligne créée.
     
    10g SOC5> insert into dvp values(1, 'en', 1, 'home');
     
    1 ligne créée.
     
    10g SOC5> insert into dvp values(2, 'fr', 1, 'accueil');
     
    1 ligne créée.
     
    10g SOC5> insert into dvp values(2, 'es', 1, 'accueil');
     
    1 ligne créée.
     
    10g SOC5> insert into dvp values(2, 'en', 1, 'accueil');
     
    1 ligne créée.
     
    10g SOC5> 
    10g SOC5> -- toutes les pages de cette enseigne qui n'ont pas la langue
    10g SOC5> SELECT DISTINCT D1.PAGE_ID, D1.PAGE_NOM
      2  FROM   DVP D1
      3  WHERE  D1.PAGE_ID NOT IN ( SELECT D2.PAGE_ID
      4                             FROM   DVP D2
      5                             WHERE  D2.LANGUE_ID = '&LANGUE_ID'
      6                             AND    D2.ENS_ID    = '&ENS_ID' );
    Entrez une valeur pour langue_id : es
    Entrez une valeur pour ens_id : 1
     
    aucune ligne sélectionnée
     
    10g SOC5> /
    Entrez une valeur pour langue_id : ch
    Entrez une valeur pour ens_id : 1
     
       PAGE_ID PAGE_NOM
    ---------- ------------------------------
             1 home
             2 accueil
     
    2 ligne(s) sélectionnée(s).

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Points : 166
    Points
    166
    Par défaut
    nickel,
    parfait je te remercie!

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Points : 166
    Points
    166
    Par défaut
    il manque une tite ligne :


    SELECT DISTINCT P1.PAGE_ID, P1.PAGE_NOM
    FROM Page P1
    WHERE P1.PAGE_ID NOT IN ( SELECT P2.PAGE_ID
    FROM Page P2
    WHERE P2.LANGUE_ID = '&LANGUE_ID'
    AND P2.ENS_ID = '&ENS_ID' )
    and P1.ens_id='&ENS_ID' ;


    Mais merci quand meme c'est cool!

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Je ne saurais interpréter l'impact de l'ajout de cette ligne mais personnellement elle ne le me semble pas.
    Tu aurais un exemple justifiant son utilisation ?

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Points : 166
    Points
    166
    Par défaut
    oui car j'ai plusieurs enseignes (1, 2, 3) et je ne veux les pages concernées que par l'enseigne que j'ai selectionnée.
    Enfin bref, merci quand meme!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [requete SQL] Probleme requete UPDATE
    Par Shiryu44 dans le forum JDBC
    Réponses: 12
    Dernier message: 10/03/2005, 11h41
  2. [excel > sql] effectuer requete d'insertion
    Par kiki93 dans le forum Requêtes
    Réponses: 2
    Dernier message: 16/02/2005, 15h30
  3. [SQL] une requete qui fait mal a la tete
    Par MailOut dans le forum Langage SQL
    Réponses: 7
    Dernier message: 07/02/2005, 16h22
  4. [PL/SQL] Optimisation requete SQL
    Par CDRIK dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/10/2004, 09h52
  5. [SQL+php] requete a trouver
    Par theclear dans le forum Langage SQL
    Réponses: 6
    Dernier message: 11/10/2004, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo