Sql server sql server DATEADD中包含sql DATEADD
我需要做以下工作:Sql server sql server DATEADD中包含sql DATEADD,sql-server,tsql,Sql Server,Tsql,我需要做以下工作: Select ProID from Pros ps where ps.ProId = '102-C01-1299' and ConfirmDate > DATEADD(DAY, (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo') as days,ps.ProgStartDate) 请注意,对于DATEADD函数,我需要动态获取第2个参数。 请注意,tt.Days
Select ProID from Pros ps where ps.ProId = '102-C01-1299'
and ConfirmDate > DATEADD(DAY, (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo') as days,ps.ProgStartDate)
请注意,对于DATEADD函数,我需要动态获取第2个参数。
请注意,tt.DaysDue返回一个整数值
我收到一条消息说DATEADD需要3个参数。为什么不先创建一个参数呢
declare @days int
set @days = (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo')
Select ProID
from Pros ps
where ps.ProId = '102-C01-1299'
and ConfirmDate > DATEADD(DAY, @days, ps.ProgStartDate)
如果无法使用参数,则应采用以下方法:
Select ProID
from Pros ps
where ps.ProId = '102-C01-1299'
and ConfirmDate > DATEADD(DAY, (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo'), ps.ProgStartDate)
为什么不先创建一个参数呢
declare @days int
set @days = (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo')
Select ProID
from Pros ps
where ps.ProId = '102-C01-1299'
and ConfirmDate > DATEADD(DAY, @days, ps.ProgStartDate)
如果无法使用参数,则应采用以下方法:
Select ProID
from Pros ps
where ps.ProId = '102-C01-1299'
and ConfirmDate > DATEADD(DAY, (select tt.DaysDue from tblTaskTimeline tt where Task = 'TaskInfo'), ps.ProgStartDate)
删除“as days”应该有效。删除“as days”应该有效。因为这是一个更大的sql语句的一部分,在这种情况下,我需要“一次性”完成,因为这是一个更大的sql语句的一部分,在这种情况下,我需要“一次性”完成