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

SQL Oracle Discussion :

Partitionnement colonnes lineare ou log


Sujet :

SQL Oracle

  1. #1
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 55
    Par défaut Partitionnement colonnes lineare ou log
    J’ai la distribution suivante :
    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
    DT          MONTHS
    ------- ----------
    2009-02          0
    2009-01        0,1
    2009-01        0,5
    2009-01        0,6
    2008-12        1,4
    2008-12        1,7
    2008-12        1,7
    2008-12        1,9
    2008-12        1,9
    2008-12          2
    2008-11        2,1
    2008-11        2,1
    2008-11        2,1
    2008-11        2,2
    2008-11        2,2
    2008-11        2,2
    2008-11        2,4
    2008-11        2,4
    2008-11        2,4
    2008-11        2,4
    Ou DT est la date et MONTHS est la distance par rapport a la première date (2009-02 a 0 MONTHS).
    Cette requête est exécutée pour un ensemble des produits.
    Pour chaque produit requêté les colonnes DT et MONTS ainsi que la longueur ne de la liste sont pas pareils.
    Je dois diviser cette liste en intervalles pour une représentation graphique.
    Le graphique doit montrer un nombre fixe de partitions (par ex 4).
    Comment je peux faire sachant que la longueur de la liste n’est pas toujours la même. Dans cet exemple j’ai 20 lignes, pour d’autre produits j’ai 50 lignes voir 3 lignes.
    Globalement le but est de dire : dans premier quartille j’ai x produits dans 2 eme y etc.
    En plus on me demande de faire la même chose mais avec une échèle logarithmique.

    Merci pour votre attention

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Vous pouvez utiliser NTILE :
    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
    With MaTable AS
    (
    select '2009-02' as dt, 0 as months from dual union all
    select '2009-01'      , 0.1         from dual union all
    select '2009-01'      , 0.5         from dual union all
    select '2009-01'      , 0.6         from dual union all
    select '2008-12'      , 1.4         from dual union all
    select '2008-12'      , 1.7         from dual union all
    select '2008-12'      , 1.7         from dual union all
    select '2008-12'      , 1.9         from dual union all
    select '2008-12'      , 1.9         from dual union all
    select '2008-12'      , 2           from dual union all
    select '2008-11'      , 2.1         from dual union all
    select '2008-11'      , 2.1         from dual union all
    select '2008-11'      , 2.1         from dual union all
    select '2008-11'      , 2.2         from dual union all
    select '2008-11'      , 2.2         from dual union all
    select '2008-11'      , 2.2         from dual union all
    select '2008-11'      , 2.4         from dual union all
    select '2008-11'      , 2.4         from dual union all
    select '2008-11'      , 2.4         from dual union all
    select '2008-11'      , 2.4         from dual
    )
    select dt, months,
           ntile(4) over(order by dt asc) as nt
      from MaTable;
     
    DT	MONTHS	NT
    2008-11	2.2	1
    2008-11	2.2	1
    2008-11	2.1	1
    2008-11	2.1	1
    2008-11	2.4	1
    2008-11	2.4	2
    2008-11	2.4	2
    2008-11	2.2	2
    2008-11	2.4	2
    2008-11	2.1	2
    2008-12	1.9	3
    2008-12	1.9	3
    2008-12	1.7	3
    2008-12	1.7	3
    2008-12	1.4	3
    2008-12	2	4
    2009-01	0.5	4
    2009-01	0.1	4
    2009-01	0.6	4
    2009-02	0	4

  3. #3
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 55
    Par défaut
    Merci pour la reponse.
    Je vais essayer.

Discussions similaires

  1. [JES2] Job Log : Signification des colonnes
    Par Pico----- dans le forum z/OS
    Réponses: 5
    Dernier message: 29/08/2012, 22h51
  2. [Débutant] sommation partitionnée d'une colonne
    Par gc001 dans le forum MATLAB
    Réponses: 8
    Dernier message: 21/04/2010, 11h12
  3. Réponses: 8
    Dernier message: 15/06/2009, 13h36
  4. partitionnement sur colonne date
    Par debdba dans le forum Oracle
    Réponses: 2
    Dernier message: 23/02/2009, 15h51
  5. Tables partitionnées avec deux colonnes
    Par frsof dans le forum Administration
    Réponses: 2
    Dernier message: 28/04/2008, 09h43

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