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

MS SQL Server Discussion :

select Distinct champ, order by timestamp


Sujet :

MS SQL Server

  1. #1
    Membre régulier Avatar de DonkeyMaster
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 95
    Points : 110
    Points
    110
    Par défaut select Distinct champ, order by timestamp
    Bonjour,
    j'ai du mal à combiner distinct et order by dans une seule requête, quand chacun concerne un champ différent.

    Voici un peu de code :

    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
    create table ligne_usinage (
        um char(10) NOT NULL,
        uc char(10) NOT NULL,
        quand datetime default (getdate()),
        sceau timestamp
    )
    go
     
    insert ligne_usinage (um, uc) values ('S456789123', 'M987654321');
    insert ligne_usinage (um, uc) values ('S345678912', 'M987654321');
    insert ligne_usinage (um, uc) values ('S234567891', 'M987654321');
    insert ligne_usinage (um, uc) values ('S123456789', 'M987654321');
    insert ligne_usinage (um, uc) values ('S567891234', 'M987654321');
    insert ligne_usinage (um, uc) values ('S678912345', 'M876543219');
    insert ligne_usinage (um, uc) values ('S123456789', 'M987654321');
    insert ligne_usinage (um, uc) values ('S234567891', 'M876543219');
     
    select distinct uc from ligne_usinage where um like 'M987654321' order by sceau desc
    go
    je souhaite obtenir comme résultat :
    S456789123
    S345678912
    S234567891
    S123456789
    S567891234

    c'est-à-dire toutes les valeurs distinctes d'UC, triés par timestamp par ordre décroissant, qui sont dans l'UM 'M9x'

    Mais cette requête me retourne toujours les UC triés par ordre alphabétique. J'ai l'impression que soit j'ai le distinct, soit j'ai l'order by. Il n'y pas moyen de combiner les deux en une requête SQL ?
    Il y a aussi un where sur l'UM, mais je pense que ça ne me posera pas problème.

  2. #2
    Membre régulier Avatar de DonkeyMaster
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 95
    Points : 110
    Points
    110
    Par défaut
    J'ai trouvé ma réponse tout seul.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    select uc 
    from (
        select 
            uc, 
            max(sceau) as sceau 
        from ligne_usinage 
        group by uc) 
    as ucs 
    order by sceau desc

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

Discussions similaires

  1. [AC-2003] Select Distinct et Order by : possible ?
    Par Monkey_D.Luffy dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 27/07/2010, 18h44
  2. SELECT DISTINCT avec 2 champ
    Par cortex024 dans le forum Langage SQL
    Réponses: 12
    Dernier message: 14/06/2007, 11h16
  3. SELECT DISTINCT avec tri sur un autre champ que celui du distinct
    Par Stephane_br dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/11/2006, 11h37
  4. SELECT DISTINCT ... ORDER BY
    Par amenis dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 29/07/2005, 10h23
  5. Select distinct et order by
    Par arsgunner dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/06/2004, 11h17

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