首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

一条SQL话语转换成LINQ

2012-09-10 
一条SQL语句转换成LINQselect b.ProductID,falsenum from(Select COUNT(*) as falsenum,ItemID from ItemV

一条SQL语句转换成LINQ
select b.ProductID,falsenum from
(Select COUNT(*) as falsenum,ItemID from ItemVerifyHistory a 
 where exists(Select * from ItemVerifyHistory b where b.Sequence=1 and a.Sequence>1 and b.VerifyAddress=8 and
  (a. VerifyAddress != b.VerifyAddress or DATEDIFF(day,b. VerifyDate, a. VerifyDate)>=1)) 
  group by ItemID) as a,ProductItem as b
  where a.ItemID=b.ItemID

把以上SQL语句转换成LINQ TO SQL 语法,大家看下。

[解决办法]

C# code
var query= from x in (from a in ItemVerifyHistorywhere ItemVerifyHistory.Where(b=>b.Sequence==1 && a.Sequence>1 && b.VerifyAddress==8                      && (a. VerifyAddress != b.VerifyAddress || System.Data.Linq.SqlClient.SqlMethods.DateDiffDay(b. VerifyDate,a. VerifyDate)>=1)).Any()group a by a.ItemID into gselect new {falsenum=g.Count(),g.Key})           join b in ProductItem            on x.ItemID equals b.ItemID           select new            {b.ProductID,x.falsenum}; 

热点排行