SELECT C.* FROM StockToCategory STC
INNER JOIN Category C ON STC.CategoryID = C.CategoryID
WHERE STC.StockID = @StockID
VS
SELECT * FROM Category
WHERE CategoryID IN
(SELECT CategoryID FROM StockToCategory WHERE StockID = @StockID)
哪种方法被认为是(句法上)正确且性能最佳的方法?为什么?
对我来说,后一种示例中的语法似乎更合乎逻辑,但我的假设是JOIN会更快。
我查看了查询计划,但没有从中解密出任何信息。