我有两个表,一个是由一个简单的insert语句填充,另一个是使用Table-Valued Parameter(由于行数),它们都在应用程序中工作。
日期从.NET变量传递,因此它们都使用相同的值。
两者都是DATETIME NOT NULL
,但是当TVP进入日期时间时,它会如下:
2016-02-24 09:40:26.647
然而,在另一张桌子上的INSERT INTO
中,这就是:
2016-02-24 09:40:26.000
我需要将这些值与另一个值连接起来,将数据链接在一起,但毫秒是一个问题。
我的问题:
INSERT INTO
声明只进入第二个'的全部时间。在另一张桌子?答案 0 :(得分:0)
我最终使用了以下内容:
DATEADD(ms, -(datepart(ms, RequestDT)), RequestDT)
RequestDT是我的约会对象,但是我还没有找到为什么TVP和INSERT INTO的运作方式不同。
答案 1 :(得分:0)
通过截断日期连接表格。
SELECT t1.*,t2.*
FROM table1 t1
JOIN table2 t2 ON (TO_CHAR(t1.datecolumn,'YYYYMMDDHH24MISS')=TO_CHAR(t2.datecolumn,'YYYYMMDDHH24MISS'))
答案 2 :(得分:0)
你可以用这个
CAST(FORMAT(RequestDT,'yyyy-MM-dd HH:mm:ss') AS datetime)