我在下面有一些SQL以编程方式生成:
INSERT INTO TABLE (COMID, NAME, DATE)
SELECT DISTINCT 'COM001', 'John', '01-Jan-4501 00:00:00'
我如何修改这个,以便如果它找到日期时间:01-Jan-4501 00:00:00
然后用今天的日期替换它?
答案 0 :(得分:0)
SELECT DISTINCT 'COM001', 'John',
case when date = '01-Jan-4501 00:00:00' then convert(date,getdate()) end
答案 1 :(得分:0)
您可能希望避免一些错误或不相关的值。
SELECT
'COM001',
'John',
case
when cast('01-Jan-4501 00:00:00' as date) > cast('01-Jan-2100 00:00:00' as date)
then cast(getdate() as varchar(30))
else '01-Jan-4501 00:00:00'
end
另一种方法是在该表上创建一个自动进行日期字段更正的触发器。