2012-02-07 28 views
5

12 Idönüştürme datetime biçimi saat

Ben 12 saatlik biçime dönüştürmek istediğini 24 saat biçiminde bana zaman verir bu sorgu

select CONVERT(varchar(5), tdate ,108) AS [Time] from table 

yüzden çalıştı (askeri) sahip

select SUBSTRING(CONVERT(VARCHAR, tdate, 100),13,2) + ':' 
+ SUBSTRING(CONVERT(VARCHAR, tdate, 100),16,2) + '' 
+ SUBSTRING(CONVERT(VARCHAR, tdate, 100),18,2) AS T 
from table 

altında sorgu ve ben 12 saatlik biçimi olsun ama bunu yaparken daha kısa ya da daha iyi bir yolu olup olmadığını sadece merak ediyorum. herhangi bir yardım?

cevap

6

örneğin geçerli datetime dönüştürmek isterseniz:

SELECT CONVERT(VARCHAR, getdate(), 100) AS DateTime_In_12h_Format 

yerine getdate() Bir sorguda istenen sütun koyabilirsiniz (örneğin, örnekte tdate gibi). Eğer SADECE isterseniz 12 saat içinde zaman ve tarih ve saat bunları ayırmak için alt dizgi/sağa kullanın. Görünüşe göre zaten nasıl olduğunu bilirsin =). Her bir tarihin dönüşümü için

This page listelenmiştir. Diğer dönüşüm türlerine ihtiyacınız varsa gerçekten kullanışlıdır.

6

Bu, yalnızca tarih değil, dönecektir. tablo verileri için

SELECT RIGHT(CONVERT(VARCHAR, getdate(), 100), 7) AS time 

: Kodun altında

select RIGHT(CONVERT(varchar, tdate ,100), 7) AS [Time] from table 
0

10:30 PM

SELECT FORMAT(CAST(getdate() AS DATETIME),'hh:mm tt') AS [Time] 
gibi sadece zaman dönecektir
İlgili konular