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

QlikView Discussion :

Récupérer la 2ème plus grande valeur dans une variable


Sujet :

QlikView

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2011
    Messages : 64
    Points : 55
    Points
    55
    Par défaut Récupérer la 2ème plus grande valeur dans une variable
    Bonjour à tous,

    Voici mon soucis:

    Je charge ma table client, pour chaque client j'ai une date :

    Load IDClient,
    DateInscriClient,
    Day(DateInscriClient) as Jours,
    ....
    From Client.qvd;

    Ce que j'aimerai obtenir c'est le deuxième jour le plus grand de ma table.
    Par exemple si max(Jours)=30 alors je veux récupérer 29.

    Mon but est de lier un tableau, à l'aide de Set Analysis, au 2ème jour le plus grand. Le problème c'est que le Set analysis ne semble pas prendre en compte les fonctions max...

    Je veux donc récupérer ce chiffre 29 dans une variable. Si possible sans recharger une deuxième fois ma table...

    Si quelqu'un a une idée ?

    (je pense que la solution est toute bête mais je sèche...)

    Merci à vous.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 132
    Points : 182
    Points
    182
    Par défaut
    Bonjour,

    Voici un exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    t_DATE:
    load Date(MakeDate(2012,12,30)-day(RowNo())) as valDate
    	 AutoGenerate(25);
     
    t_Date2:
    load valDate as vDa Resident t_DATE Order by valDate desc;
     
    DROP Table t_DATE;
     
    let var1=FieldValue('vDa',2);
    trace $(var1);
    qui te permet d'utiliser $(var1) dans un set Analysis.

    Je suis pas sur de bien répondre à la question.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    On peut utiliser les fonctions d'agrégation dans les set analysis.
    Voir "analyse d'ensembles" dans l'aide :
    Modificateurs d'ensemble avec Recherches avancées
    Des recherches avancées à l'aide de guillements et d'agrégations peuvent être utilisées pour définir des ensembles.

    Exemples :
    sum( {$–1<Produit = {“*Interne*”, “*Domestique*”}>} Ventes )
    Renvoie les ventes pour la sélection active, à l'exception des transactions relatives aux produits contenant la chaîne « Interne » ou «Domestique » dans le nom du produit.

    sum( {$<Client = {“=Sum({1<Année = {2007}>} Ventes ) > 1000000”}>} Ventes )
    Renvoie les ventes pour la sélection active, mais avec une nouvelle sélection dans le champ « Client » : uniquement les clients dont les ventes totales sont supérieures à 1 000 000 pour l'année 2007.
    Le tout est de bien faire attention à la syntaxe.
    Il faut par exemple mettre le signe = devant la fonction max(),
    sinon ça ne marche pas

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Ca marche avec cette expression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =max( {$<Annee = {"=Max(all Annee)>Annee"}>} Annee)

Discussions similaires

  1. [10g] Afficher la plus grande valeur dans une requête
    Par alexis trotta dans le forum SQL
    Réponses: 6
    Dernier message: 14/03/2014, 14h54
  2. recupérer la plus grande valeur dans une bdd
    Par djo007 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 30/01/2012, 21h15
  3. cherche la plus grande valeur dans une matrice
    Par thtghgh dans le forum MATLAB
    Réponses: 9
    Dernier message: 28/12/2009, 19h35
  4. VBA_E : Selection des 5 plus grandes valeurs d'une colonne..
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/09/2006, 17h39
  5. vba-Excel-Plus grande valeur d'une colonne
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 08/08/2006, 10h50

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