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 :

ORDER BY date avec 3 champs


Sujet :

Développement SQL Server

  1. #1
    Membre expert
    Avatar de vpourchet
    Homme Profil pro
    Integrateur Systemes & Virtualisation
    Inscrit en
    Avril 2008
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Integrateur Systemes & Virtualisation
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 159
    Points : 3 645
    Points
    3 645
    Par défaut ORDER BY date avec 3 champs
    bonjour, ma question est simple mais je n'ai pas réussi a trouver de réponse pour le moment .

    voici ma requete :

    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
    SELECT ag.matricule_agent, 
    ag.nom_agent, 
    ag.pnom_agent, 
    ts.texte_site, 
    td.annee_date, 
    td.mois_date, 
    td.jour_date, 
    rp.heure_planifier,
    isnull(rp.agpresent_planifier,0) as Present,
    isnull(c.texte_conclusion, 'test')as conclusion
    FROM tagent ag
    Left join tvisite v on ag.matricule_agent=v.matricule_agent
    left join rplanifiervisite rp on rp.id_visite=v.id_visite
    left join  tdates td on rp.id_date=td.id_date
    left join tsite ts on v.id_site = ts.id_site
    left join tconclusion c on c.id_conclusion=v.id_conclusion
    j'aimerais ajouter un order by pour trier le resultat par date mais comme vous le voyez ma date est sur 3 champs distincts, y'aurait il moyen de 'creer une date' à partir de mes trois champs ?
    et si possible trier avec l'heure 'rp.heure_planifier' qui est au format varchar sous la forme '08:00' pour 8h

    apres avoir recherché en profondeur j'ai trouvé l'expression qu'il me fallait : CAST(),

    ca donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    order by cast(cast(td.jour_date as varchar)+'/'+cast(td.mois_date as varchar)+'/'+cast(td.annee_date as varchar)+' '+rp.heure_planifier as datetime) DESC
    Mon Site Web consacré à la Virtualisation

    VMware vExpert 2013/2012, VMware Certified Professionnal (VCP510), VMware Technical Sales Professional, VMware Sales Professionnal
    Veeam Technical Sales Professional, Veeam Sales Professional
    Citrix Certified Sales Professional
    DataCore Sales Certified Professional

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    Bonjour,
    Attention je crains que le cast en date dépendent des paramètres régionaux, du serveur.

    La commande que tu cherchais est plutot CONVERT ou tu spécifie dans quel ordre sont les élements de ta date.
    Mais il n'y a pas de raison d'utiliser cela.
    Pourquoi ne fais tu pas un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Order by td.annee_date, 
    td.mois_date, 
    td.jour_date, 
    rp.heure_planifier,
    Cela ne résoudrait -il pas ton problème.
    A+
    Soazig

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

Discussions similaires

  1. Probleme insertion date avec un champ datetime
    Par locs dans le forum MS SQL Server
    Réponses: 24
    Dernier message: 24/09/2006, 12h19
  2. Convertir un champ DATETIME en DATE avec SQLSERVER
    Par __fabrice dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 10/11/2005, 11h26
  3. composant de calcul [champ date] avec rave report
    Par segnac dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/06/2005, 19h08
  4. Probleme de requete SQL avec un champs date
    Par ju360modena dans le forum ASP
    Réponses: 5
    Dernier message: 16/06/2005, 11h18
  5. ODBC Access => Type Incompatible avec un champ DATE ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 6
    Dernier message: 23/04/2005, 02h02

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