【发布时间】:2012-06-14 15:18:43
【问题描述】:
在左侧,您将看到我为一个表设计的设计,在右侧,您将看到下面 SQL 中子查询的结果。我正在尝试在 tblClaims 上的三个字段 patientID,claimsFromDate,claimsThroughDate 上加入子查询,并让外部查询将正确的 tblClaims.ID 与三部分连接相关联。
我得到的错误:
第 3 行,关键字 select
andincorrect 附近的语法不正确 ) 附近的语法,第 12 行
select tblClaims.id, t.primaryCode
from t
(
select patientid, claimsfromdate, claimsthroughDate, primarycode from myTable
union
select patientid, claimsfromDate, claimsthroughDate, secondaryCode from myTable
union
select patientID, claimsfromdate, claimsthroughDate, tertiarycode from myTable
) as t
inner join t on tblclaims.patientid=t.patientid
and tblclaims.claimsfromdate=t.claimsfromdate
and tblclaims.cllaimsthroughdate=t.claimsfromdate
编辑:内部查询是协调多列字段。它返回 150 万行。 我运行的固定查询返回了 350 万个
select tblClaims.id, t.primarycode
from
(
select patientid, claimsfromdate, claimsthroughDate, primarycode from myTable
) as t
inner join tblclaims on tblclaims.patientid=t.patientid
and tblclaims.claimsfromdate=t.claimsfromdate
and tblclaims.cllaimsthroughdate=t.claimsfromdate
【问题讨论】:
-
难怪你没看到 - from 后面有 t,去掉就行了。
标签: sql sql-server-2008 tsql