Constituer une date à partir de champs simple

Résolu
Guévara -  
Morgothal Messages postés 1350 Statut Membre -
Bonjour,
Voila, j'ai 4 champs (AnnéeDébut, MoisDébut, JourDébut et HeureDébut) qui constituent une début de période et 4 champs (AnnéeFin, MoisFin, JourFin, HeureFin) qui constituent la fin de cette même période.
A partir de ça, je voudrais assembler les 4 champs de chaque période pour comparer si la date de début est toujours inférieur à la date de fin.
C'est à dire par exemple :
-AnnéeDébut : 2013
-MoisDébut : 01
-JourDébut : 13
-HeureDébut : 12:13

-AnnéeFin : 2013
-MoisFin : 01
-JourFin : 15
-HeureFin : 02:12

Et je voudrais obtenir ceci : 13/01/2013 12:13 et 15/01/2013 02:12

Seulement, je ne sais pas comment faire pour assembler et obtenir ce que je veux.
Merci d'avance la communauté

4 réponses

  1. Morgothal Messages postés 1350 Statut Membre 184
     
    Hello,
    Malheureusement je ne trouve pas pour préciser l'heure, mais pour la date tu peux procéder ainsi :

    select CONVERT(Datetime,AnnéeDébut+MoisDébut+JourDébut)

    0
  2. Guévara
     
    Ca ne fonctionne pas !
    J'ai mis exactement ta phrase sans succès !
    Je suis sous access c'est peut être pour ça?
    Merci
    0
    1. Morgothal Messages postés 1350 Statut Membre 184
       
      Oui c'est ça, la solution proposée fonctionne sous SQL Server ;-)
      0
  3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    bonjour
    tu peux essayer de concatener tes champs dans champ supplementaire dans une requete

    exempleEn creant le champ Comparaison
    comparaison: [AnnéeDébut]"/ "[MoisDébut]"/ "[JourDebut]"/ "[HeureDébut]" et "[AnnéeFin]"/" [MoisFin]"/"[JourFin]"/"[HeureFin]
    0
  4. Guévara
     
    Bonjour,
    J'ai fait ceci mes j'ai une erreur de syntaxe :
    SELECT DATE_FORMAT([AnnéeDébut]-[MoisDébut]-[JourDebut]-[HeureDébut],'%Y %m %d %T') as datedebut
    FROM [NAVIRES-MOIS-MAREES-JOUR_201301_3_2_9];
    Quelqu'un voit une erreur??
    Merci
    0
    1. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Bonjour
      Le format Date ne peut pas ajouter plusieurq champs.
      Il faut faire concatenation de tes champs
      Dans une requete tu selectionnes les huit champs puis tu ajoutes une colonne
      Comparaison par exempleet pour faire la concaténation.
      Dans l'exemple precedent j'ai fait un oubli dans la syntaxe.
      Il faut
      comparaison: [AnnéeDébut]&"/"&[MoisDébut]&"/"&[JourDebut]&" "&[HeureDébut]&" et "&[AnnéeFin]&"/"&[MoisFin]"/"[JourFin]&" "&[HeureFin]
      Cela devrait fonctionner
      0
    2. Guévara
       
      Merci je test et je vous tiens au courant !
      0
    3. Guévara
       
      MERCI BEAUCOUP Castours pour ton aide !

      Voici la solution pour ceux qui cherche à concaténer des champs d'une date :
      SELECT [AnnéeDébut]&"/"&[MoisDébut]&"/"&[JourDebut]&" "&[HeureDébut] as datedebut, [AnnéeFin]&"/"&[MoisFin]&"/"&[JourFin]&" "&[HeureFin] as datefin
      FROM [NAVIRES-MOIS-MAREES-JOUR_201301_3_2_9];

      Encore merci
      0