2011-11-14 18 views
6

UżywamSQL Server 2000 konwersja datetime dostać GGMM

convert(varchar(20), getdate(), 112) 

przekonwertować getdate(), aby rrrrmmdd formatu (format ISO), który działa świetnie. Teraz muszę zrobić coś podobnego, aby uzyskać czas w formacie ggmm. Jak mogę to osiągnąć?

Przykład: 12:10 powinien wyglądać 1210, 15:43 powinien wyglądać 1543.

+0

http://msdn.microsoft.com/en-us/library/aa258265%28v=sql.80%29.aspx –

+0

@MarcB -Twoje sugestie, że otrzymuję datepart na godziny, otrzymasz datepart dla minut i concantenate? – MAW74656

Odpowiedz

17
SELECT REPLACE(CONVERT(varchar(5), GETDATE(), 108), ':', '') 
+0

- Rozumiem, ale czy można to zrobić, aby uzyskać czas wojskowy? – MAW74656

+1

czyli czas militarny. W rzeczywistości potrzeba więcej pracy, aby uzyskać 12-godzinny zegar. http://msdn.microsoft.com/en-us/library/ms187928.aspx Zamiast 108 można również użyć 8, 14 lub 114, aby uzyskać takie same wyniki. –

3
SELECT REPLACE(CONVERT(CHAR(5),GETDATE(),108), ':', '') 

Jeśli nie potrzebujemy dwukropek, po prostu go usunąć ...

0

NIE wykonuj tylko datepartu na godziny, pobierz datepart dla minut i połącz jako 19:05, a skończy 195. Jeśli wybierzesz tę trasę, musisz zrobić coś takiego, aby poradzić sobie z minutami:

prawy ('0' + varcha r (datepart (mi, getdate())), 2)

w tym momencie robi się dość nieefektywny.