注册 登录
编程论坛 SQL Server论坛

在 FROM 子句中多次指定了相关名称 'a',麻烦帮看下语句有什么错?

小狐001 发布于 2011-08-12 11:08, 1871 次点击
select a.Bjbh,a.Sbdw,b.Xmmc,c.Clhj from (dbo.Yw_RegCase a inner join dbo.Sz_Services b ON a.servicesid = b.id) join (dbo.Yw_RegCase a inner join dbo.Yw_CaseProcess c ON a.Bjzt = c.Bjzt) on (a.cjsj between DATEADD(dayofyear, - 30, GETDATE()) and GETDATE()) order by a.cjsj

出错: 在 FROM 子句中多次指定了相关名称 'a'。

请帮忙指点一下,谢谢!
2 回复
#2
小狐0012011-08-12 14:41
回复 楼主 小狐001
应该是这样的:select a.Bjbh,a.Sbdw,b.Xmmc,c.Clhj from Yw_RegCase a inner join dbo.Sz_Services b ON a.servicesid = b.id inner join dbo.Yw_CaseProcess c ON a.Bjzt = c.Bjzt where (a.cjsj between DATEADD(dayofyear, - 30, GETDATE()) and GETDATE()) order by a.cjsj
#3
autobot2011-11-24 21:53
where (a.cjsj between DATEADD(dayofyear, - 30, GETDATE()) and GETDATE())
这个位置不太对,where后面的列名呢?要不就是你的括号写的不对多了一个吧?
是不是这样?
where a.cjsj between DATEADD(dayofyear, - 30, GETDATE()) and GETDATE()
1