linq中的子查询
本文关键字:查询 linq | 更新日期: 2023-09-27 18:04:30
用linq编写这个查询的最佳方式是什么?
SELECT *
FROM product_master
where product_id in (select product_id from product where buyer_user_id=12)
var _result = from a in product_master
where (product.Where(s => s.buyer_user_id == 12))
.Contains(a.product_ID)
select a;
或
var _result = (from a in product_master
join b in product
on a.product_id equals b.product_id
where b.buyer_user_id == 12
select a).Distinct();
JW的答案是正确的。或者,假设子查询不相关,您可以单独表示它:
var pids = product.Where(p => p.buyer_user_id == 12);
var r = product_master.Where(pm => pids.Contains(pm.product_id));