假设有A,B,C,D四张表
其中A,B是以ID1来关联
B,C是以ID2来关联
C,D是以ID3来关联
而ID1,ID2,ID3在将来的使用中
都将用@id1,@id2,@id3参数方式
目前D表中有用字段最多,ABC各一个
请教语句应该怎么写,谢谢
传参 SQL
------解决方案--------------------
连接表不就可以了?
SELECT A.COLA
,B.COLB
,C.COLC
,D.COLD1
,D.COLD2
,...
FROM A,B,C,D
WHERE A.ID1= B.ID1
AND B.ID2= C.ID2
AND C.ID3 = D.ID3
AND A.ID1 = @ID1
AND B.ID2 = @ID2
AND C.ID3 = @ID3
------解决方案--------------------
SELECT S.State,S.Name,P.operationSequenceId,S.Description,S.Quantity,P.StartCalendar,P.EndCalendar
FROM GanttMultiuser.dbo.EOperation as P join GanttMultiuser.dbo.EProductionOrder as S
WHERE @StartDate = P.StartCalendar and @State = S.State AND P.SelectedResourceId in ( Select P.SelectedResourceId from GanttMultiuser.dbo.EResource as T WHERE @Name = T.Name and T.Id = P.SelectedResourceId and @GroupId = T.ResourceGroupId )
上面是你的代码,用红色标记的地方有问题,你可以换换位置。例如P.StartCalendar =@StartDate