이 SQL 문을 OUTER APPLY 및 TOP를 사용하는 LINQ로 변환하는 방법을 알지 못합니다. 누군가 그것을 어떻게 다루는 지 아이디어를 줄 수 있습니까? 감사!이 SQL 문을 LINQ로 변환하는 방법?
SELECT Cust.CustomerName, Ord.OnlineOrderTitle, Pro.ProductTitle,
Pic.PictureFilename, PCom.PictureCommentText, Ord.OnlineOrderDateAdded
FROM Customer as Cust
OUTER APPLY
(SELECT * FROM OnlineOrder
WHERE CustomerID = Cust.CustomerID) as Ord
OUTER APPLY
(SELECT * FROM Product
WHERE OnlineOrderID = Ord.OnlineOrderID) as Pro
OUTER APPLY
(SELECT TOP 1 * FROM Accessory
WHERE ProductID = Pro.ProductID) as Acc
OUTER APPLY
(SELECT TOP 1 * FROM Picture
WHERE ProductID = Pro.ProductID) as Pic
OUTER APPLY
(SELECT TOP 1 * FROM PictureComment
WHERE PictureID = Pic.PictureID) as PCom
ORDER BY Ord.OnlineOrderDateAdded DESC
왜 SQL보기로 만들고 그런 식으로 사용합니까? Maybve 당신이 원하는 것은 아니지만 확실히 한 가지 해결 방법입니다. – Rippo
이것은 과도하게 설계된'join'처럼 보입니다. 아마도 T-SQL의 '조인'으로 다시 작성한 다음이를 LINQ-to-SQL로 변환 할 수 있습니까? – bzlm