运行查询后,如何将它们重新组合在一起?
我能够运行以下查询将日期值转换为datetime并将时间部分附加到它
declare @date char(8), @time char(8)
select @date='20101001',@time ='12:10:47'
select cast(@date as datetime)+@time
在上面的方法中,日期值转换为datetime数据类型,时间值为 添加到它。
--------------Output ----------------------
result tab -
(No column name )
row1 || 2011-09-16 22:16.000
如何隐藏回原始数据值(撤消)??????
我运行上面的查询转换为datetime数据类型,时间值为 添加到它 - 运作良好...现在我想撤消回到原始日期值.....
答案 0 :(得分:0)
目前尚不清楚问题是什么,但这是我的猜测。如果您尝试提取日期时间段,请使用DatePart函数
declare @date char(8), @time char(8)
select @date='20101001',@time ='12:10:47'
select cast(@date as datetime)+@time
select cast(cast(@date as datetime)+@time as datetime)
select DATEPART(mm,cast(cast(@date as datetime)+@time as datetime))
答案 1 :(得分:0)
要将datetime
的组成部分提取为特定格式的字符串,请使用CONVERT
函数并传递所需的样式。要回到你开始使用的地方
DECLARE @date CHAR(8),
@time CHAR(8)
SELECT @date = '20101001',
@time = '12:10:47'
DECLARE @dt DATETIME
SELECT @dt = CAST(@date AS DATETIME) + @time
SELECT CONVERT(CHAR(8), @dt, 112) AS [@date],
CONVERT(CHAR(8), @dt, 108) AS [@time]
哪个给出了
@date @time
-------- --------
20101001 12:10:47