CUSTOMER(ID,NAME,ENTRY_DT)
1,Dave,8312012
2,Tom,11262013
3,Iva,3312012
.
.
.
因此ENTRY_DT列具有MDDYYYY或MMDDYYYY格式的数字字符串值。 我想写一个简单的选择查询,以便ENTRY_DT显示
8/31/2012
11/26/2013
3/31/2012
.
.
.
答案 0 :(得分:2)
DECLARE @TABLE TABLE (Int_Date INT)
INSERT INTO @TABLE VALUES
(8312012),
(11262013),
(3312012)
SELECT LEFT(RIGHT('00000000'+ CAST(Int_Date AS VARCHAR(10)), 8), 2) +'/'
+REVERSE(SUBSTRING(REVERSE(Int_Date), 5, 2)) + '/' + RIGHT(Int_Date, 4)
FROM @TABLE
08/31/2012
11/26/2013
03/31/2012
答案 1 :(得分:1)
Select covert(date,right(('00000000' + entry_dt),8),101)
---如果是SQL Server 2008或更高版本
将日期替换为日期时间(如果是2005年或以下)。
答案 2 :(得分:0)
select id, name, CONVERT(datetime, entry_dt, 101)
答案 3 :(得分:0)
SELECT LEFT(右(' 00000000' + CAST(ENTRY_DT AS VARCHAR(10)),8),2)+' /' + REVERSE(SUBSTRING(REVERSE(ENTRY_DT) ),5,2))+' /' + REVERSE(SUBSTRING(REVERSE(ENTRY_DT),1,4))来自#CUSTOMER
答案 4 :(得分:0)
SELECT SUBSTRING(右('00000000'+ ENTRY_DT,8),1,2)+'/'+ SUBSTRING(右('00000000'+ ENTRY_DT,8),3,2)+'/'+ SUBSTRING(右('00000000'+ ENTRY_DT,8),5,4)来自#CUSTOMER