这个SQL查询是否可以翻译成LINQ?

时间:2010-08-24 08:42:11

标签: c# linq

SELECT * 
FROM table1 JOIN table2 
ON table1.center BETWEEN table2.left AND table2.right

我是LINQ的新手,我看到'join'需要一个'equals'关键字(而不是我的SQL中的BETWEEN)。也许我可以覆盖'Equals'运算符并创建一个LINQ查询的新对象?

1 个答案:

答案 0 :(得分:4)

对于除equals之外的其他内容,您将连接条件放在where子句中。它类似于旧式SQL,您可以从笛卡尔连接开始,然后对where子句进行过滤。

from t1 in table1
from t2 in table2
where t1.centre >= t2.left && t1.centre <= t2.right
select new { ta.centre, t1.left}; //add more fields as required.