[英]Sql Query to Linq To Sql
对于Linq to Sql中的多表查询,我遇到一些困难。 我有3张桌子:
我想检索产品的最小值(价格)。 我能够获得正确的Sql查询,但是现在我需要将该查询“翻译”为Linq To Sql。 你能帮我么 ?
这里是Sql查询:
SELECT Min(cp.Price)
FROM Products p, Rows r, ConstantPrices cp
WHERE p.ProductId = r.ProductId AND
r.RowId = cp.RowId AND
p.ProductId = XXX;
这是一个解决方案:
decimal? min = (from p in db.Products
join r in db.Rows on p.ProductId equals r.ProductId
join cp in db.ConstantPrices on r.RowId equals cp.RowId
where p.ProductId == 1
select cp.Price).Min();
var productQuery = from p in myContext
where p.id == someId
select (double?) p.Row.Price;
var minPrice = productQuery.Min();
此处的nullable很重要,否则,如果系统中没有产品,行或价格,它将失败。
它与翻译查询无关 ,而与利用linq2sql提供的功能有关。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.