J'utilise SQL Server 2016 et je stocke json. Lorsque je l'extrait, le format datetime ne s'affiche pas propre. Comment formater le format datetime?
select JSON_VALUE(trade, '$.entrytime') AS entrytime from dbo.Trades
Valeurs affichées:
2016-05-23T05:21:30.3068919-04:00 2016-05-24T10:49:16.337257-04:00 2016-05-24T11:05:30.8941267-04:00 2016-05-24T11:37:35.9555731-04:00
Comment formater ces dates dans le format yyyy-mm-dd hh:mm:ss
?
Vous pouvez également utiliser FORMAT
:
select FORMAT(CAST(JSON_VALUE(trade, '$.entrytime') as datetimeoffset), 'yyyy-MM-dd hh:mm:ss') AS entrytime from dbo.Trades
Vous souhaitez mettre en forme l'horodatage suivant pour ressembler à celui qui le suit:
2016-05-24T11:37:35.9555731-04:00 2016-05-24 11:37:35
La requête suivante remplace le T
par un espace, et par des sous-strings de tout ce qui vient après (et incluant) la période.
SELECT REPLACE(SUBSTRING(JSON_VALUE(trade, '$.entrytime'), 1, CHARINDEX('.', JSON_VALUE(trade, '$.entrytime')) - 1), 'T', ' ') AS entrytime FROM dbo.Trades