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 :

Tri sur des champs "Date" stockés en Varchar au format DD/MM/YYYY


Sujet :

Langage SQL

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Tri sur des champs "Date" stockés en Varchar au format DD/MM/YYYY
    Voila, petit probleme:
    Pour des raisons indépendantes de ma volonté, j'ai une colonne date dans ma table qui est en VARCHAR et les dates sont au format JJ/MM/AA.
    Or quand je trie ces dates via ORDER BY cela me done
    01/02/05
    01/02/06
    02/02/05
    Ce qui est ma foi logique mais faut.
    Bref, je ne m'en sors point (je debute...) , il y aurait-il une ame généreuse pour m'aider.
    merci d'avance.

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 480
    Points
    3 480
    Par défaut
    Salut,

    Pour bien faire, il faudra soit transformer ton VARCHAR afin qu'il soit triable en VARCHAR ( par exemple, un format YYYYMMJJ permet de trier par date, même dans un VARCHAR ) ou bien d'utiliser les fonctions de ton SGBD afin de transformer ce VARCHAR en objet DATE, et de faire la comparaison sur ce dernier ( mais cette option reste longue.. )

    As-tu l'opportunité de rajouter une colonne ?

    A+
    K

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par KiLVaiDeN
    Salut,

    Pour bien faire, il faudra soit transformer ton VARCHAR afin qu'il soit triable en VARCHAR ( par exemple, un format YYYYMMJJ permet de trier par date, même dans un VARCHAR ) ou bien d'utiliser les fonctions de ton SGBD afin de transformer ce VARCHAR en objet DATE, et de faire la comparaison sur ce dernier ( mais cette option reste longue.. )

    As-tu l'opportunité de rajouter une colonne ?

    A+
    Nop court mais concis... je vais creuser l'idée
    merci

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 847
    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 847
    Points : 52 961
    Points
    52 961
    Billets dans le blog
    6
    Par défaut
    1) demarrez votre session avec le flag :
    2) faite vos requête de la sorte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ...
    FROM ...
    ORDER BY CAST(MaColonneCharDate AS DATETIME)
    3) au besoin pilotez la valeur pivot de siècle à l'aide de sp_configure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sp_configure 'two digit year cutoff'
    Exemple, remise de la valeur de siècle pivot à 1930 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sp_configure 'two digit year cutoff', '30'
    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/ * * * * *

Discussions similaires

  1. [A07] Tri sur des champs calculé dans un etat
    Par Thierry'' dans le forum IHM
    Réponses: 2
    Dernier message: 02/02/2009, 08h31
  2. requêtes sur des champs date
    Par wiwi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 03/02/2006, 14h14
  3. tri sur des champs calculés
    Par Thib dans le forum Bases de données
    Réponses: 10
    Dernier message: 18/10/2005, 17h24

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