小编Zet*_*ews的帖子

SELECT语句中的日期始终相同

我正在尝试将一个表中的数据插入到具有双列键的表中.源表不共享目标的密钥.目标中的两个键列都是varchars.

我有一个插入声明:

INSERT INTO Table1 (Invoice, DetailLine, SomeData1, SomeData2) 
SELECT ('1'+RIGHT('00000000000000' + CONVERT(varchar, DatePart(ns,SYSDATETIME()), 14), 0, 'STARTING_VALUE_1407', [ActualValue] 
FROM Table2;
Run Code Online (Sandbox Code Playgroud)

当我执行上面的操作时,我的DateTime2对象的毫秒数都是相同的,好像它只评估该值一次.这使我无法将其用作临时唯一键.是否可以在SELECT语句中使用SYSDATETIME()或任何其他日期函数,并为每行重新评估值?如果没有,在选择通常不共享目标表键的数据时,是否有办法在执行INSERT INTO SELECT时生成唯一值?

sql sql-server select sysdatetime

2
推荐指数
1
解决办法
125
查看次数

标签 统计

select ×1

sql ×1

sql-server ×1

sysdatetime ×1