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

Langage SQL Discussion :

[SQL Server 2005] Ramener le MAX du kilométrage sur toutes les lignes


Sujet :

Langage SQL

  1. #1
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2004
    Messages : 880
    Points : 740
    Points
    740
    Par défaut [SQL Server 2005] Ramener le MAX du kilométrage sur toutes les lignes
    Un problème dont je n'ai pas pu trouver la solution :

    J'ai la table T_Intervention(idIntervention,idVehicule,idTypeIntervention,Kilometrage )
    1 -- 23 -- 1 -- 2500
    2 -- 23 -- 2 -- 3000
    3 -- 32 -- 1 -- 5000
    4 -- 32 -- 2 -- 2000

    Je veux avoir une requête qui me fera l'affichage suivant :

    1 -- 23 -- 1 -- 3000
    2 -- 23 -- 2 -- 3000
    3 -- 32 -- 1 -- 5000
    4 -- 32 -- 2 -- 5000

    Afficher à la place de kilomètrage pour chaque intervention le kilométrage le plus grand, groupé sur le véhicule .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT     a.idVehicule, a.idIntervention, a.kilometrage, a.idTypeIntervention 
    FROM         SV_EC a INNER JOIN
                              (SELECT     idVehicule, MAX(kilometrage)
                                FROM          SV_EC
                                GROUP BY idVehicule) b ON a.idVehicule = b.idVehicule
    Voici le message d'erreur que je reçois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Aucune colonne spécifiée pour la colonne 2 de b
    SGBD : SqlServer 2005
    Scuse me while I kiss the sky ! Jimi Hendrix

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    mai 2002
    Messages
    20 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 20 952
    Points : 49 777
    Points
    49 777
    Billets dans le blog
    1
    Par défaut
    Votre colonne MAX(kilometrage) dans la sous requête n'a pas de nom. Vous devez la nommer. Par exemple :
    MAX(kilometrage) AS MAX_KM

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2004
    Messages : 880
    Points : 740
    Points
    740
    Par défaut
    Citation Envoyé par SQLpro
    Votre colonne MAX(kilometrage) dans la sous requête n'a pas de nom. Vous devez la nommer. Par exemple :
    MAX(kilometrage) AS MAX_KM
    A +
    Merci SQLpro, le problème de syntaxe est résolu, mais je n'arrive toujours pas à afficher le jeu de résultat souhaité .
    Scuse me while I kiss the sky ! Jimi Hendrix

  4. #4
    Membre confirmé Avatar de lper
    Profil pro
    Inscrit en
    juin 2004
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : juin 2004
    Messages : 390
    Points : 618
    Points
    618
    Par défaut
    Tu affiches bien le max(kilométrage) de b, autrement dit la colonne MAX_KM ?
    La faiblesse humaine est d'avoir des curiosités d'apprendre ce qu'on ne voudrait pas savoir

  5. #5
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2004
    Messages : 880
    Points : 740
    Points
    740
    Par défaut
    Citation Envoyé par lper
    Tu affiches bien le max(kilométrage) de b, autrement dit la colonne MAX_KM ?
    Non , j'y arrive pas
    Scuse me while I kiss the sky ! Jimi Hendrix

  6. #6
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : janvier 2005
    Messages : 2 701
    Points : 4 237
    Points
    4 237
    Par défaut
    Citation Envoyé par Bujuman
    Non , j'y arrive pas
    Quelle requête utilises-tu ?

    Ceci ne fonctionne pas ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT
        a.idVehicule, a.idIntervention, b.Max_Km, a.idTypeIntervention 
    FROM SV_EC a INNER JOIN
                        (SELECT idVehicule, MAX(kilometrage) AS Max_Km
                           FROM SV_EC
                          GROUP BY idVehicule) b ON a.idVehicule = b.idVehicule
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  7. #7
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2004
    Messages : 880
    Points : 740
    Points
    740
    Par défaut
    Merci à tous, j'avais un peu faim
    Scuse me while I kiss the sky ! Jimi Hendrix

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. sql server 2005 VARBINARY(MAX)
    Par est09 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 30/01/2010, 21h22

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