Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在c中加入linq?_Sql_Linq - Fatal编程技术网

Sql 如何在c中加入linq?

Sql 如何在c中加入linq?,sql,linq,Sql,Linq,如何将sql转换为system.linq Select top 100 percent s.a,s.b,s.c,s.d From table a as s, table b as x Where s.a=x.a and s.b=x.b and s.c=x.c Group by s.a,s.b,s.c,s.d 根据我对你问题的理解;似乎您想在c中获取数据并进行连接。如果是,则您可以执行以下操作: public class tabData { public strin

如何将sql转换为system.linq

Select top 100 percent s.a,s.b,s.c,s.d
From table a as s, table b as x
Where 
    s.a=x.a and s.b=x.b and s.c=x.c 
Group by 
    s.a,s.b,s.c,s.d

根据我对你问题的理解;似乎您想在c中获取数据并进行连接。如果是,则您可以执行以下操作:

public class tabData
{
    public string a {get;set;}
    public string b {get;set;}
    public string c {get;set;}
    public string d {get;set;}
}

List<tabData> tabA = {data of your table a}
List<tabData> tabB = {data of your table b}

var result = from r1 in tabA
             join r2 in tabB on new {T1 = r1.a, T2 = r1.b, T3 = r1.c} equals new {T1 = r2.a, T2 = r2.b, T3 = r2.c}
             group r1 by new
                                       {
                                           aa = r1.a,
                                           bb = r1.b,
                                           cc = r1.c,
                                           dd = r1.d
                                       } into g 
            select new
                {
                    a = g.key.aa,
                    b = g.key.bb,
                    c = g.key.cc,
                    d = g.key.dd
                }

根据我对你问题的理解;似乎您想在c中获取数据并进行连接。如果是,则您可以执行以下操作:

public class tabData
{
    public string a {get;set;}
    public string b {get;set;}
    public string c {get;set;}
    public string d {get;set;}
}

List<tabData> tabA = {data of your table a}
List<tabData> tabB = {data of your table b}

var result = from r1 in tabA
             join r2 in tabB on new {T1 = r1.a, T2 = r1.b, T3 = r1.c} equals new {T1 = r2.a, T2 = r2.b, T3 = r2.c}
             group r1 by new
                                       {
                                           aa = r1.a,
                                           bb = r1.b,
                                           cc = r1.c,
                                           dd = r1.d
                                       } into g 
            select new
                {
                    a = g.key.aa,
                    b = g.key.bb,
                    c = g.key.cc,
                    d = g.key.dd
                }

我认为您正在询问如何像在sql中一样加入linq,如果是这样,请参见以下内容:

var query =
   from abc in tbl1
   join def in tbl2 on tbl1.PK equals tbl2.FK
select new { ABC = abc, DEF = def };

我认为您正在询问如何像在sql中一样加入linq,如果是这样,请参见以下内容:

var query =
   from abc in tbl1
   join def in tbl2 on tbl1.PK equals tbl2.FK
select new { ABC = abc, DEF = def };

你有一个没有聚合的groupby?@magnus a.k.a DISTINCT,可能是因为连接产生笛卡尔积。修复连接将是首选的任何为什么顶部100%?这和所有的问题不一样吗?老实说,我不敢相信,有了这样一个问题标题,SO自己搜索类似问题时不会发现类似的东西或一堆类似的骗局@用户12139660请告诉我们到目前为止您尝试了哪些没有成功work@CaiusJard我不相信任何linq to sql提供程序都会支持t top 100%,这就是我为什么要问的原因。你有一个没有聚合的group by吗?@magnus a.k.a DISTINCT,可能是因为连接导致笛卡尔积。修复连接将是首选的任何为什么顶部100%?这和所有的问题不一样吗?老实说,我不敢相信,有了这样一个问题标题,SO自己搜索类似问题时不会发现类似的东西或一堆类似的骗局@用户12139660请告诉我们到目前为止您尝试了哪些没有成功work@CaiusJard我不相信有一个等同于t top 100%受任何LINQtoSQL提供商支持的版本,这就是我为什么要问的原因。