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

Oracle Discussion :

[SQL] Requête SQL


Sujet :

Oracle

  1. #1
    Membre à l'essai Avatar de Kit59
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Novembre 2002
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Novembre 2002
    Messages : 24
    Points : 14
    Points
    14
    Par défaut [SQL] Requête SQL
    Bonjour

    Toujours pour l’édition externalisée de mes factures.
    Je souhaiterais que ma requête retourne X fois la facture pour un même client.
    Le « X » sera un champ de la table des clients.

    Dans la table des factures, il n’y a qu’une seule ligne par facture


    Exemple :
    - le client 1 veut 3 éditions
    - le client 2 veut 2 éditions
    - le client 3 veut 3 éditions

    Je souhaiterais dans que la requête me ramène 3 fois la ligne de facture pour le client 1, 2 fois celle du client 2 et 3 fois celle du client 3.

    La requete sera exécuté dans Reports 6i

    Merci pour votre aide

    Michael

  2. #2
    Rédacteur

    Inscrit en
    Septembre 2004
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 626
    Points : 848
    Points
    848
    Par défaut
    Bonjour,


    Que penses tu de :

    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  
      maTable.cnt
    from  
      (
        select 6 cnt
        from   dual 
      ) maTable,
      (
        select  rownum rnum 
        from    all_objects 
        where   rownum <= 100
      ) repeat
    where 
      repeat.rnum <= maTable.cnt
    6 est le nombre de répétition que je souhaite.
    Je suppose qu'il n'y aura pas plus de 100 répétitions...


    Laly.
    In the heart of the truly greats, perfection is never achieved but endlessly pursued.

    Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobiles, de quartiles et bien d'autres...)

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 15
    Points : 13
    Points
    13
    Par défaut Re: [SQL] Requête SQL
    je te conseil de créer une table temporaire.

    1- tu récupère le nombre X chez le client;
    2- tu fais la requête qui recherche une seule facture, tu mets le valeurs dans un curseur
    3- Tu boucle X fois (LOOP END LOOP), et chaque fois tu insèrre les valeurs du curseur dans la table Temporaire

    4- Après édition du résultat, tu supprime la table temporaire

Discussions similaires

  1. [SQL] Requête SQL : obtenir un total
    Par Riwalenn dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 26/09/2006, 10h19
  2. [SQL] Requête SQL trop compliquée pour lui.
    Par psychoBob dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 23/05/2006, 22h52
  3. [SQL] requêtes SQL sur plusieurs tables
    Par zahiton dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/11/2005, 16h32
  4. [pb requête sql] Requête dynamique
    Par viny dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 15/09/2005, 12h31
  5. Réponses: 2
    Dernier message: 06/06/2005, 15h13

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