Bonjour,
Comment faire pour ajouter les heures et minutes (donc sans les secondes) à ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part CONVERT(varchar,date_creation, 103) as date_creation
Bonjour,
Comment faire pour ajouter les heures et minutes (donc sans les secondes) à ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part CONVERT(varchar,date_creation, 103) as date_creation
Bonjour,
Un peu plus:
Il suffisait de continuer à lire la documentation de la fonction CONVERT()
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT CONVERT(char(10), date_creation, 103) + ' ' + CONVERT(char(8), date_creation, 108)
Vous pouvez aussi en faire une fonction scalaire :
Que vous pouvez utiliser entre le SELECT et le FROM d'une requête...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE FUNCTION fn_get_formatted_date (@_date_time datetime) RETURNS char(19) AS BEGIN RETURN CONVERT(char(10), @_date_time, 103) + ' ' + CONVERT(char(8), @_date_time, 108) END
Ou encore une fonction de table en ligne qui offre de meilleures performances :
- quand elle est utilisée sur une colonne d'une table
- qu'elle retourne une seule ligne sans interroger une table
- qu'elle est utilisée avec l'opérateur APPLY :
Ce qui donne, à l'utilisation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE FUNCTION fn_get_formatted_date (@_date_time datetime) RETURNS TABLE AS RETURN SELECT CONVERT(char(10), @_date_time, 103) + ' ' + CONVERT(char(8), @_date_time, 108) AS formatted_date
Cela dit si c'est pour de l'affichage dans une application, une telle transformation doit se faire côté applicatif ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT T.mesColonnes , D.formatted_date FROM dbo.maTable AS T CROSS APPLY dbo.fn_get_formatted_date(T.date_creation) AS D
@++![]()
Effectivement je pourrais le faire côté applicatif, mais cette ligne me semble plus simple et rapide :Cela dit si c'est pour de l'affichage dans une application, une telle transformation doit se faire côté applicatif ...
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT CONVERT(char(10), date_creation, 103) + ' ' + CONVERT(char(8), date_creation, 108)![]()
Faux... et ce n'est pas le boulot d'un SGBD...Effectivement je pourrais le faire côté applicatif, mais cette ligne me semble plus simple et rapide
Les languages tels que C# ou autres sont là pour çà...
Partager