Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Convertir DateTime en aaaaMMjjHHmm dans T-SQL

Cela a quelques morceaux de hachage de moins que l'original, mais je maintiens mon commentaire qu'il est préférable de le faire dans votre couche de présentation - ou n'importe où, vraiment, avec des fonctionnalités de formatage générales, plutôt que dans la base de données :

select CONVERT(varchar(20),myDate,112) + REPLACE(CONVERT(varchar(5),myDate,108),':','')

Observations :112 est un meilleur style à utiliser pour convertir la partie date, puisqu'elle n'a déjà pas de séparateurs. Et, si vous spécifiez une longueur pour une conversion et que la chaîne convertie ne rentre pas, le reste est supprimé. C'est ainsi que j'ai éliminé la partie secondes de l'heure, en ne laissant de place que pour les heures et les minutes. Mais il n'y a pas de style qui n'inclut pas de séparateurs dans la portion de temps.