CREATE TABLE Parent (
Id INT IDENTITY(1,1) NOT NULL
Name VARCHAR(255)
SomeProp VARCHAR(255)
)
CREATE TABLE Child (
Id INT IDENTITY(1,1) NOT NULL
ParentId INT NOT NULL
ChildA VARCHAR(255)
ChildZ VARCHAR(255)
)
我希望編寫接受@name
作爲參數的存儲過程中,發現父匹配的域名(如果有的話),返回父結果集,然後將該父項的任何子項作爲單獨的結果集返回。
如何有效地選擇孩子?我目前的幼稚做法是
SELECT @id = FROM Parent WHERE Name = @name
SELECT * FROM Parent WHERE Name = @name
SELECT * FROM Child WHERE [email protected]
我可以避免從父項中選擇兩次嗎?
真正的表具有UNIQUE約束,但感謝您指出了這一點。 INNER JOIN對我來說似乎是一個更好的方法。 –