2011-07-23 15 views
10

muszę aktualny czas data w formacie YYYYMMDDHHMISSMISSQL Server: Jak uzyskać aktualny czas data w YYYYMMDDHHMISSMSS

Przykład:

20110723233747607 

Używając CURRENT_TIMESTAMP lub getdate() funkcje, możemy pobierać prąd datetime do formatu 2011-07-23 23:37:47.607. Jeśli używam REPLACE i CONVERT funkcje do usunięcia "-" i ":" znaków, a następnie uzyskać wartość w

Jul 23 2011 11:37PM 

... PDF. Ale potrzebuję aktualnej daty jako 20110723233747607, aby użyć jej dla mojego innego celu.

Moje zapytanie SQL jest:

SELECT REPLACE(CONVERT(VARCHAR(20), CURRENT_TIMESTAMP),'.','') 

wyjściowa: Jul 23 2011 11:37PM

Więc jak mogę uzyskać aktualny czas dat w moim wymaganym formacie? Pls pomóż.

+2

Nigdy nie pomyślałeś o dodaniu funkcji REPLACE do innych znaków, które chcesz usunąć? –

Odpowiedz

13
select replace(
     replace(
     replace(
     replace(convert(varchar(23), getdate(), 121), 
     '-',''), 
     '.',''), 
     ' ',''), 
     ':','') 
1

Nie wiem, dlaczego trzeba korzystać z tak wielu funkcji REPLACE(). Korzystanie z funkcji naprawdę skraca czas wykonywania. Użyłem poniżej dwóch funkcji CONVERT i REPLACE.

SELECT CONVERT(VARCHAR(8), GETDATE(), 112) + REPLACE(CONVERT(VARCHAR(12), GETDATE(), 114),':','') 
+0

Dzięki @bluefeet. Właśnie to poprawiłem – user007

Powiązane problemy