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

Designer Discussion :

indicateur sur une table à plusieurs colonnes en clé primaire


Sujet :

Designer

  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut indicateur sur une table à plusieurs colonnes en clé primaire
    Bonjour,

    J'ai une table sur laquelle j'ai une clé priamire composée de plusieurs colonnes. Comment pourrai-je définir indicateur qui me retourne le nombre d'enregistrements distincts dans cette table.

    cldt.

  2. #2
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Par défaut
    Essaies ce genre de formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count(distinct TABLE.CHAMP1||TABLE.CHAMP2||TABLE.CHAMP3)
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Essaies ce genre de formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count(distinct TABLE.CHAMP1||TABLE.CHAMP2||TABLE.CHAMP3)
    g déjà essayé cette formule, elle donne rien.

    Connaissez-vous un tuto sur les opérateurs || + * .... et leurs fonctionnement ?

  4. #4
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Par défaut
    Qu'entendez-vous pas "elle ne donne rien" ?

    || -> Opérateur de concaténation
    + -> Addition
    * -> Produit

    Essayez sinon de voir, si vous avez des champs numériques dans vos clés primaires, de les transformer en texte avant la concaténation, par ex (syntaxe Oracle)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count(DISTINCT TABLE.CHAMP1||to_char(TABLE.CHAMP2,'0')||TABLE.CHAMP3)
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  5. #5
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Qu'entendez-vous pas "elle ne donne rien" ?

    || -> Opérateur de concaténation
    + -> Addition
    * -> Produit

    Essayez sinon de voir, si vous avez des champs numériques dans vos clés primaires, de les transformer en texte avant la concaténation, par ex (syntaxe Oracle)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count(DISTINCT TABLE.CHAMP1||to_char(TABLE.CHAMP2,'0')||TABLE.CHAMP3)
    les colonnes en question sont toutes de types char.
    Ce que j'essais de faire c'est de créer (au niveau du designer), un indicateur qui me retourne le nobre d'enregistrement. Et non pas une concatenation de ces colonnes.

  6. #6
    Membre chevronné

    Inscrit en
    Juillet 2007
    Messages
    391
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 391
    Par défaut
    En fait, la seule solution pour compter ton nombre de valeurs pour ta clé primaire ne peut se faire que sur les champs de cette clé.

    Si tu fait juste un count(champ1), ton résultat ne sera pas juste.
    tu n'as d'autres solutions que de concaténer tous les champs de ta clé puis de compter le nombre d'occurrences de cette concaténation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count (champ1||champ2||champ3)
    Le distinct n'est pas nécessaire puisqu'il s'agit de champs de la clé.

    La concaténation des champs sera invisible de l'utilisateur (le code ci-dessous ne renvoie que le nombre d'occurrences) mais elle est obligatoire pour avoir un décompte juste.

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/02/2011, 19h11
  2. annuler un filtre sur une ou plusieurs colonnes
    Par soony dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/02/2007, 09h55
  3. comment gérer plusieurs locks sur une table?
    Par charluber dans le forum Oracle
    Réponses: 4
    Dernier message: 18/04/2006, 21h28
  4. [débutant] 1 ordre select sur une OU plusieurs tables
    Par goony dans le forum Langage SQL
    Réponses: 10
    Dernier message: 18/08/2005, 10h57
  5. selection sur une table en fonction de plusieurs ligne
    Par dimdidi dans le forum Langage SQL
    Réponses: 2
    Dernier message: 06/12/2004, 08h42

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