Sql 在where子句中使用DATEADD
我试图在where子句中使用DATEADD函数。下面是下面的代码,我得到的错误就在下面。有人知道问题出在哪里吗Sql 在where子句中使用DATEADD,sql,sql-server,Sql,Sql Server,我试图在where子句中使用DATEADD函数。下面是下面的代码,我得到的错误就在下面。有人知道问题出在哪里吗 select e.GenProdIdent, e.GenericLaunchDate, DATEADD(month, -12, min(e.GenericLaunchDate)) TwelveMosPrior, SUM(WACDollars) from ErosionData2 e join mddb m on m.GenProdIdent = e.GenProdIdent join
select e.GenProdIdent, e.GenericLaunchDate, DATEADD(month, -12, min(e.GenericLaunchDate)) TwelveMosPrior, SUM(WACDollars) from ErosionData2 e
join mddb m on m.GenProdIdent = e.GenProdIdent
join wkdata2 w on w.NDC11 = m.NDC
where m.RepckgCode <> 'x' and w.recorddate between DATEADD(month, -12, min(w.recorddate)) and e.GenericLaunchDate and e.genprodident = '44505080000320'
group by e.GenProdIdent,
e.GenericLaunchDate
选择e.genprodent、e.GenericLaunchDate、DATEADD(月-12,分钟(e.GenericLaunchDate))十二个月前,从侵蚀数据2中选择总和(WACDollars)
在m.genprodent=e.genprodent上加入mddb m
在w.NDC11=m.NDC上加入wkdata2 w
其中,m.RepckgCode“x”和w.recorddate介于DATEADD(月-12,分钟(w.recorddate))和e.GenericLaunchDate和e.GenProdIdentit之间='445008000320'
由e.GenProdIdentit分组,
e、 一般启动日期
味精147,第15级,状态1,第4行
聚合可能不会出现在WHERE子句中,除非它位于HAVING子句或select列表中包含的子查询中,并且被聚合的列是外部引用。它与您使用的Min()函数有关,而不是DateAdd()Ahh。我刚刚意识到,当我回来报告我的发现时。谢谢