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 :

First_value et last_value


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Avril 2005
    Messages
    238
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 238
    Par défaut First_value et last_value
    Bonjour,
    En utilisant first_value et last_value dans le code qui est dans l'image en pj,
    j'obtiens bien les valeur de la donnée HOPHJOU.IJRECARANN.

    Seulement ce code me donne 245 lignes, alors que je voudrais obtenir une seule ligne :

    Matri /début /firstHOPHJOUIJRECARANN/ FIN/ HOPHJOU.IJRECARANN
    000689 01/05/2012 -1105.33 31/12/2012 -335.33

    Dans le code j'ai utiliser uniquement un matricule pour essayer.

    Merci pour votre aide
    Images attachées Images attachées  

  2. #2
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    La requete est illisible dans la piéce jointe (et le copier impossible).
    Merci d'envoyer la requête dans le message (avec les balises CODE) !

  3. #3
    Membre très actif
    Inscrit en
    Avril 2005
    Messages
    238
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 238
    Par défaut
    Voici le code en plus clair
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT HOPHJOU.SECTORI,
    HOPHJOU.MATRI,
    HOPHJOU.IJRECARANN,
    first_value(HOPHJOU.IJRECARANN/60) over (partition by HOPHJOU.SECTORI order by HOPHJOU.MATRI) a,
    last_value(HOPHJOU.IJRECARANN/60) over (partition by HOPHJOU.SECTORI order by HOPHJOU.MATRI desc
    rows between current row and unbounded following) b
    from HOPHJOU
    WHERE HOPHJOU.MATRI = '000689' AND HOPHJOU.SECTORI = '012234' and EXTRACT(YEAR FROM DAT = 2012

  4. #4
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Utilisez First/Last dans leur version de fonction agrégées (group by ) et non pas des fonctions de fenêtrage (over(...).

  5. #5
    Membre très actif
    Inscrit en
    Avril 2005
    Messages
    238
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 238
    Par défaut
    Merci pour votre réponse mais comment on l'utilise en Group By.

  6. #6
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par jopont Voir le message
    Merci pour votre réponse mais comment on l'utilise en Group By.
    FIRST

  7. #7
    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
    Et encore, je me demande si le besoin ce n'est pas min / max, parce que la partition et le order by sur des éléments fixes, on perd une grosse partie de l'intérêt des fonctions first_value et last_value.

    Comme souvent, un jeu de données concis mais précis est toujours intéressant pour illustrer son besoin.

Discussions similaires

  1. le comportement de la fonction first_value
    Par saigon dans le forum Requêtes
    Réponses: 6
    Dernier message: 09/11/2011, 17h32
  2. Différence de syntaxe, (KEEP, FIRST_VALUE)
    Par Drizzt [Drone38] dans le forum SQL
    Réponses: 4
    Dernier message: 04/11/2009, 12h21
  3. [SQL / PL/SQL] fonction analytique last_value
    Par Nounoursonne dans le forum SQL
    Réponses: 7
    Dernier message: 23/08/2007, 21h18
  4. [SQL / PL/SQL] fonction analytique last_value
    Par Nounoursonne dans le forum Oracle
    Réponses: 7
    Dernier message: 23/08/2007, 21h18
  5. Pb Fonction analytique last_value
    Par McM dans le forum SQL
    Réponses: 8
    Dernier message: 03/08/2007, 17h23

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