Wie kann ich die folgende SQL eine Linq-Abfrage machen:C# LINQ to SQL-OR-Statement in JOIN
SELECT * FROM ORDERS
INNER JOIN ITEMS
ON ORDERS.ID = ITEMS.ORDER_A OR ORDERS.ID = ITEMS.ORDER_B
Ich denke, es wäre wäre:
from o in orders
join i in items
on o.ID equals i.OrderA or o.ID equals i.OrderB
select new { Order = o, Item = i }
Ich vermute Der Compiler möchte etwas anderes. Wie schreibe ich diese Aussage?
warum nicht iA ?? iB –
Das würde Datensätze nur für Aufträge zurückgeben, die in den Tabellen OrderA und OrderB einen entsprechenden Datensatz enthalten. Sie benötigen zwei linke Joins für diese Inline, wenn sie funktionieren sollen. –
Ich denke, das funktioniert, meine letzte Abfrage ist ziemlich kompliziert, ich habe bereits 3 Joins und muss noch Outer dazukommen ... Ich wünschte, sie hätten Linq mehr wie SQL strukturiert. – jonathanpeppers