c# - 将带有子查询的sql查询转换为linq语句

标签 c# sql linq sql-server-2008

<分区>

Possible Duplicate:
how to do subquery in LINQ

我有一个 SQL Server 2008 查询:

select 
    account_hcc_id, account_name 
from 
    [ACCOUNT_HISTORY_FACT] 
where 
     TOP_ACCOUNT_KEY = (select TOP 1 TOP_ACCOUNT_KEY 
                        from ACCOUNT_HISTORY_FACT 
                        where account_hcc_id = '3362') 
     and ACCOUNT_LEVEL = 1;

我需要将其转换为 C# linq 语句。请让我知道我该怎么做。

最佳答案

from ahf in db.ACCOUNT_HISTORY_FACT
where ahf.ACCOUNT_LEVEL == 1 &&
      ahf.TOP_ACCOUNT_KEY == db.ACCOUNT_HISTORY_FACT
                               .Where(x => x.account_hcc_id == "3362") 
                               .Select(x => x.TOP_ACCOUNT_KEY)
                               .FirstOrDefault() 
select new { ahf.account_hcc_id, ahf.account_name };

关于c# - 将带有子查询的sql查询转换为linq语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14323192/

相关文章:

c# - asp net core 2.0 使用带有 Azure Ad 身份验证的服务

mysql - SQL 3 表连接

mysql 如何避免 select 请求中的数据重复

.net - 将两个 LINQ 查询合并为一个

c# - 正则表达式/linq 用计数替换连续字符

c# - 在 linq 中,如何从列表中取出特定参数并构建不同类型的新列表?

c# - Visual Studio : Meaning of cs8300 "merge conflict marker encountered"?

javascript - svg 到 pdf 客户端还是服务器端 C#、JS?

c# - 使用 C# 和 Windows 窗体的 XML 序列化

mysql - SUM(IF(COND,EXPR,NULL)) 和 IF(COND, SUM(EXPR),NULL)