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 :

Petit problème SQL


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 9
    Par défaut Petit problème SQL
    Bonjour,

    J'ai un petit problème SQL qui peut paraitre simple mais que je n'arrive pas à solutionner :

    Table ARTICLE:
    CODE_ARTICLE
    LIBELLE
    ...

    Table STOCK:
    CODE_MAGASIN
    CODE_ARTICLE
    QTE_EN_MAGASIN

    Je voudrais faire une requête qui permet d'obtenir autant de ligne que la quantité en magasin par article.

    Merci de votre aide.

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par défaut
    bonjour,

    Je ne comprends pas trop ce que tu veux faire. Avoir autant de lignes? mais elles vont contenir quoi ces lignes?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 24
    Par défaut
    tu veux avoir la quantité en magasin pour chaque article ?

  4. #4
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 9
    Par défaut
    J'ai oublié de préciser que le but de cette requête est la génération d'étiquette article. Voici un exemple de ce que veux :

    Table ARTICLE

    CODE | LIBELLE
    ------------------
    EL01 | Ampoule
    EL02 | Fusible

    Table MAGASIN

    MAGASIN | ARTICLE | QTE
    --------------------------
    MAG1 | EL01 | 2
    MAG1 | EL02 | 3


    Le résultat que je souhaite :

    EL01 | Ampoule | MAG1
    EL01 | Ampoule | MAG1
    EL02 | Fusible | MAG1
    EL02 | Fusible | MAG1
    EL02 | Fusible | MAG1

    Voila, j'espère que c'est plus clair pour vous et merci de vous interressez à mon problème.

  5. #5
    Membre chevronné Avatar de elbj
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Services à domicile

    Informations forums :
    Inscription : Novembre 2004
    Messages : 371
    Par défaut
    Bonjour

    Ton SGBD n'est pas trop fait pour ça. Tu devrais gérer ça par programme, ce sera plus simple.

    Cordialement

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 136
    Par défaut
    Il te faut une table supplémentaire, avec une liste d'entiers de 1 à ... le maximum de ligne que tu peux avoir.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE TABLE    nombre
        (   valeur  INTEGER
        )
    ;
    INSERT INTO nombre(valeur) VALUES (1);
    INSERT INTO nombre(valeur) VALUES (2);
    INSERT INTO nombre(valeur) VALUES (3);
    INSERT INTO nombre(valeur) VALUES (4);
    Après la requête est simple
    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
    SELECT  art.code
        ,   art.libelle
        ,   mag.magasin
    FROM    article AS art
        INNER JOIN
            magasin AS mag
            ON  art.code = mag.article
        INNER JOIN
            nombre  AS nmb
            ON  mag.qte >= nmb.valeur
    ORDER BY
            art.code
        ,   art.libelle
        ,   mag.magasin
    ;
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

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

Discussions similaires

  1. Petit problème SQL
    Par Yooo84 dans le forum Langage SQL
    Réponses: 10
    Dernier message: 30/01/2014, 16h56
  2. Petit problème SQL
    Par kisama dans le forum Requêtes
    Réponses: 2
    Dernier message: 20/08/2012, 20h15
  3. Petit problème avec une requête SQL en VB6
    Par muzele dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 15/11/2007, 20h51
  4. Petit problème sql très embetant
    Par FataL_KilleR dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/07/2007, 11h35
  5. Petit problème SQL (GROUP BY|ORDER BY)
    Par kalash_jako dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/04/2007, 23h17

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