【问题标题】:How to Convert SQL query consisting 'not in' into LINQ?如何将包含“不在”的 SQL 查询转换为 LINQ?
【发布时间】:2021-01-07 20:16:06
【问题描述】:

SELECT distinct [Taskid] FROM[Dbimg].[dbo].[table1] where Taskid not in (select Taskid from[Dbimg].[dbo].[table1] where ValidationFlag is null)

请帮忙在linq c#中转换上面的sql查询。

【问题讨论】:

标签: entity-framework linq sql-to-linq-conversion


【解决方案1】:

你可以试试下面的代码

db.table1.Where(x => !db.table1.Where(y => y.ValidationFlag == null).Select(z => z.Taskid).Contains(x.TaskId))
         .Select(x => x.TaskId).Distinct();

但在您的情况下,您也可以在使用同一张表时修改上述 LINQ,如下所示

db.table1.Where(y => y.ValidationFlag != null).Select(z => z.Taskid).Distinct();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-26
    • 1970-01-01
    相关资源
    最近更新 更多