1

我有一个Sql Query喜欢:

select distinct FROM_EMAILID,FROM_COUNTRY from SURVEY_VISITORS
where FROM_COUNTRY IN 
(
  select top 1 FROM_COUNTRY as FROM_COUNTRY from SURVEY_VISITORS 
  where FROM_COUNTRY<>'undefined' 
  group by FROM_COUNTRY order by COUNT(*) desc
) 

我无法处理INOperator。
任何帮助将不胜感激。

对于子查询,我尝试过这种方式:

var innerQuery = (from t in VDC.SURVEY_VISITORS
                           group t by new
                           {
                              t.FROM_COUNTRY
                           } into g
                           orderby
                            g.Count() descending
                           select new
                           {
                             VisitorCount = (Int64?)g.Count(),
                             Country = g.Key.FROM_COUNTRY
                           }).FirstOrDefault();
4

1 回答 1

0
var innerQuery = (from t in VDC.SURVEY_VISITORS
                  group t by new
                  {
                    t.FROM_COUNTRY
                  } into g
                  orderby
                  g.Count() descending
                  select new
                  {
                    VisitorCount = (Int64?)g.Count(),
                    Country = g.Key.FROM_COUNTRY
                  }).FirstOrDefault();

var result = (from xx in VDC.SURVEY_VISITORS
                                  where ((innerQuery.Country.Contains(xx.FROM_COUNTRY)) && xx.TEMPLATE_ID == RecentBlastedTemplate.TEMPLATE_ID)                                  
                                  select new
                                      {
                                          xx.FROM_COUNTRY,
                                          xx.FROM_EMAILID
                                      }).Distinct().ToList();
于 2013-09-24T07:46:03.310 回答