このパラメータは、table1
の主キーであるIDです。その他の3つの表には、table1
を参照するための詳細が含まれています。明らかに私がすべての結合を切り取った場合、私はTable1
からのIDだけのデータを取得します。私は本当に何が起こっているのか理解したいと思います。ありがとう。すべてのパラメータで動作しないストアドプロシージャがあります。@AnID
SELECT
Detail14, Detail15, Detail16, //etc, etc
FROM
Table1
INNER JOIN
dbo.Table2 ON dbo.Table1.FK_AnID = dbo.Table2.PK_AnotherID
INNER JOIN
dbo.tblTable3 ON dbo.Table2.FK_Group = dbo.tblTable3.PK_RowID
LEFT JOIN
dbo.tblTable4 ON dbo.tblTable4.Name = dbo.Table1.Named
WHERE
PK_RefNumber = @AnID
ストアドプロシージャのパラメータを除外するだけで、(ストアドプロシージャの外で)単独で実行すると、クエリは目的のデータセットを返しますか? –
ええ、結合を取り出してtable1でクエリを実行すると、データセットが返されますが、同じパラメータがあれば結合で何も得られません。 – mabees
プロシージャ・コード(ストアド・プロシージャのようなもの)は**ベンダー固有のもの** ** - あなたが使用している実際の具体的なデータベース**システム**のタグをmysql、postgresql、 'oracle'、' sql-server'、 'db2'または全く別のもの... –