我有:
SELECT dv.VariableID ,
ds.DataSourceID ,
p.DataVariableDataSourceParamId ,
p.ParamCode ,
p.ParamDisplayName ,
p.DVDSParamControlType ,
p.DependentOnDVDSParamId ,
pv.ParamValue
FROM dbo.DataVariable dv
INNER JOIN dbo.DataVariableDataSource ds ON dv.DataSourceId = ds.DataSourceID
INNER JOIN dbo.DataVariableDataSourceParam p ON ds.DataSourceID = p.DataSourceId
INNER JOIN dbo.DataVariableDataSourceParamValue pv ON p.DataVariableDataSourceParamId = pv.DataVariableDataSourceParamId
WHERE dv.VariableID = @vid
ORDER BY dv.VariableID
当我只有前两个连接时,我得到了我想要的东西:6个结果。当我添加第三个时,我得到660.我只想要ParamValue来自前2个连接的6个记录,我似乎无法弄清楚为什么这个破坏了。我正处于编码的第12个小时,我确信这是非常明显的,但我可以用一只手。提前谢谢。