9
votes

SQL Server 2000 Convertir DateTime pour obtenir HHMM

J'utilise xxx

pour convertir getDate () au format YYYYMMDD (format ISO), qui fonctionne bien. Maintenant, j'ai besoin de faire quelque chose de similiaire pour obtenir le temps au format HHMM. Comment puis-je atteindre cet objectif?

Exemple: 12h10 devrait ressembler à 1210, 15 h 44 devrait ressembler à 1543.


2 commentaires

MSDN.MicRosoft.com/en-us/ Bibliothèque / AA258265% 28V = SQL.80% 29.aspx


@Marcb -Votre suggère que je reçois le datparart pendant les heures, obtenez la datePart pour les minutes et concernatez-vous?


3 Réponses :


21
votes
SELECT REPLACE(CONVERT(varchar(5), GETDATE(), 108), ':', '')

1 commentaires

C'est un temps militaire. Il faut effectivement plus de travail pour obtenir une horloge de 12 heures. msdn.microsoft.com/en-us/library/ms187928.aspx Au lieu de 108, vous pouvez également utiliser 8, 14 ou 114 pour obtenir les mêmes résultats.



3
votes
SELECT REPLACE(CONVERT(CHAR(5),GETDATE(),108), ':', '')
If you don't need colon, just remove it...

0 commentaires

0
votes

Ne faites pas exactement le datPart pour les heures, obtenez la datePart pour les procès-verbaux et concaténate de 19:05 finira par 195. Si vous allez faire cette route, vous devrez faire quelque chose comme ça pour traiter des minutes. :

droite ('0' + Varchar (DatePart (MI, GetDate ())), 2)

À ce stade, il devient assez inefficace.


0 commentaires