这个SQL代码的LINQ表达式是什么?

时间:2017-07-09 04:43:45

标签: sql linq

这是我的SQL语句:

SELECT p.* 
FROM p
LEFT JOIN q ON p.id = q.id AND p.name = q.name
WHERE q.id IS null

我正在尝试将此代码转换为LINQ表达式。

3 个答案:

答案 0 :(得分:0)

var query = from t1 in p
            join q1 in q on t1.name equals q1.name
            where q1.id == null
            select t1;

答案 1 :(得分:0)

SQL

此外,您可以尝试LinqerLinq查询转换为model1 = load_model("model1_location.model") model2 = load_model("model1_location.model") merged_model = Sequential(name='merged_model') merged_model.add(merge([model1.layers[-1],model2.layers[-1]])) merged_model.add(Dense(3, activation='softmax'))

答案 2 :(得分:0)

通常,假设使用C#,通过按LINQ理解语法顺序转换短语将SQL转换为LINQ,如果SQL具有表别名,则在LINQ中将它们用作范围变量。

看起来你正试图做一个左反半连接。

from pr in p
join qr in q on new { pr.id, p.name } equals { qr.id, qr.name } into qj
from qr in qj.DefaultIfEmpty()
where qr == null
select pr

通常会像

那样完成
from pr in p
where !qr.Any(q => q.id == pr.id && q.name.Equals(pr.name))
select pr