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

  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 : 43
    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 : 52
    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 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    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 143
    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.

  7. #7
    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
    La solution de al1_24 fonctionne parfaitement. Je n'avais pas pensé à cette solution, j'avais bien pensé à créer une autre table mais avec un trigger qui supprimait ou ajoutait le nombre de ligne en fonction de la quantité. Méthode que je trouvais barbare. La preuve avec cette solution. Les étiquettes étant générées avec crystal Report, la méthode par programme n'est pas possible (du moins, je n'ai pas trouvé)

    Encore merci à vous pour votre rapidité et la qualité des réponses.

+ 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