我如何写这个查询在linq到sql

本文关键字:linq sql 查询 何写这 | 更新日期: 2023-09-27 18:06:00

我是linq的新手,想写这个查询:

var query = from p in behzad.rptost
            where p.date.substring(0, 4) == "1395"
            -->in this calc sum=p.price_moavaq+price_year
            select p;

我怎么写这个查询?

我如何写这个查询在linq到sql

根据我的假设,您正在尝试总结每年的price_moavaq字段。此外,通过使用substring,我猜你的date字段不是DateTime类型,而只是string

所以你需要使用groupby:
var query = from p in behzad.rptost
            group p by p.date.substring(0, 4) into grouping
            select new { Year = p.Key, Sum = p.Sum(x => x.price_moavaq);

如果您的日期字段是DateTime类型,则只需使用.Year:

var query = from p in behzad.rptost
            group p by p.date.Year into grouping
            select new { Year = p.Key, Sum = p.Sum(x => x.price_moavaq);