如何在 LINQ to SQL 中使 JOIN 等同于 Not Equals



我有一个表格:年份 |期间 |帐户

在新时期,我想获取新帐户列表和上一期间也存在的帐户列表。

也在上一期间的帐户:

    bs.DataSource = from c in accountsToImport
             join p in accountsToImport on c.Account equals p.Account
             where c.Year == year && c.Period == period
             && p.Year == priorYear && p.Period == priorPeriod
             select c;
    return bs;

但是,我不知道如何使用 LINQ->SQL 获得等效的"不等于 p.account"。确实有效的 SQL 命令:

select * from tsr_accountsToimport as cper
inner join tsr_accountstoimport as pper
on cper.account <> pper.account
where 
cper.year = 2015
and cper.period = 4
and pper.period = 3

任何获取 LINQ 语法的帮助将不胜感激。谢谢!

您可以尝试 SelectMany 而不是 join。

from c in accounts
from p in accounts
where c.Account != p.Account

最新更新