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

Développement SQL Server Discussion :

Tri par lettre de manière non alphabétique


Sujet :

Développement SQL Server

  1. #1
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 70
    Points : 59
    Points
    59
    Par défaut Tri par lettre de manière non alphabétique
    Bonjour,

    Dans une requête j'aimerais classé mes champs d'une colonne mais pas dans l'ordre alphabétique, plutôt dans un ordre défini.

    exemple:
    Au lieu d'avoir

    A
    B
    C
    D

    Je voudrais pouvoir définir que ce sont les champs C qui seront en premier, puis les champs A, puis les champs B et enfin D pour avoir le résultat:

    C
    A
    B
    D

    J'espère avoir été assez clair :/

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Quel(s) critère(s) de tri souhaitez vous ?

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 760
    Points : 52 541
    Points
    52 541
    Billets dans le blog
    5
    Par défaut
    Il suffit tout bonnement de darjouter une table de tri avec deux colonnes : Lettre (PK) et Ordre (UNIQUE) et de faire une jointure entre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SUBSTRING(MaColonne, 1, 1) = Lettre
    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/ * * * * *

  4. #4
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 70
    Points : 59
    Points
    59
    Par défaut
    Pour être honnête je n'ai pas très bien compris la réponse de SQLPro, je vais essayer d'être un peu plus précis, et je demanderais une réponse un peu plus abordable pour un amateur d'SQL comme moi.

    J'ai une table nommé JOUEUR avec les champs suivants: (un bout évidement)

    nomJoueur | Poste

    Augier | Gardien
    Augiot | Défenseur
    Augiard | Attanquant
    Augenou | Milieu
    Augevert | Défenseur


    J'aimerais que mon tri dans ma requête se fasse de la manière suivante:
    D'abord les champs de tous les gardiens, puis ceux des défenseurs, puis les milieux et enfin les attaquants pour obtenir le résultat suivant:

    nomJoueur | Poste

    Augier | Gardien
    Augiot | Défenseur
    Augevert | Défenseur
    Augenou | Milieu
    Augiard | Attanquant

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 760
    Points : 52 541
    Points
    52 541
    Billets dans le blog
    5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE Poste (PosteLibelle VARCHAR(32), Ordre INT);
    INSERT INTO Poste VALUES ('gardien', 1);
    INSERT INTO Poste VALUES ('défenseur', 2);
    INSERT INTO Poste VALUES ('milieu', 3);
    INSERT INTO Poste VALUES ('attaquant', 4);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT J.*
    FROM   JOUEUR AS J
            INNER JOIN Poste AS P
               AS J.Poste = P.PosteLibelle
    ORDER BY Ordre
    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/ * * * * *

  6. #6
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 70
    Points : 59
    Points
    59
    Par défaut
    Merci => Résolu

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

Discussions similaires

  1. List de combobox trié par enabled puis alphabétique
    Par stephane.julien dans le forum C#
    Réponses: 2
    Dernier message: 08/10/2007, 10h43
  2. Tri par odre alphabétique de comptes NT
    Par Bazunga dans le forum VBScript
    Réponses: 1
    Dernier message: 26/07/2007, 16h13
  3. Réponses: 8
    Dernier message: 26/07/2007, 11h46
  4. [FAQ] Trier par ordre... non-alphabétique
    Par kaceo dans le forum Langage SQL
    Réponses: 15
    Dernier message: 02/02/2006, 09h17
  5. Tri par ordre alphabétique
    Par orus8 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 17/04/2003, 19h27

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