用于多对多关系的实体 Sql

发布于 2024-07-17 12:55:13 字数 66 浏览 11 评论 0原文

考虑两个具有多对多关系的表 Bill 和 Product。 如何使用 Entity Sql 获取特定产品的所有账单?

Consider two tables Bill and Product with a many to many relationship. How do you get all the bills for a particular product using Entity Sql?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

撩人痒 2024-07-24 12:55:13

这样的事情

SELECT B FROM [Container].Products as P
OUTER APPLY P.Bills AS B
WHERE P.ProductID == 1

将为每个账单生成一行

另一个选项是这样的:

SELECT P, (SELECT B FROM P.Bills)
FROM [Container].Products AS P
WHERE P.ProductID == 1

这将为每个匹配的产品生成一行(在本例中只有一个)
该行中的第二列将包含一个嵌套结果集,其中包含该产品的账单。

希望这对

亚历克斯有帮助

Something like this

SELECT B FROM [Container].Products as P
OUTER APPLY P.Bills AS B
WHERE P.ProductID == 1

will produce a row for each Bill

Another option is something like this:

SELECT P, (SELECT B FROM P.Bills)
FROM [Container].Products AS P
WHERE P.ProductID == 1

Which will produce a row for each matching Product (in this case just one)
and the second column in the row will include a nested result set containing the bills for that product.

Hope this helps

Alex

许仙没带伞 2024-07-24 12:55:13

你需要使用像这样的 linq;

...
using (YourEntities ye = new YourEntities())
{
   Product myProduct = ye.Product.First(p => p.ProductId = idParameter);
   var bills = myProduct.Bill.Load();       
}
...

这假设您已使用实体框架为您的数据构建模型。
bills 变量将保存与您的产品对象相关的 Bill 对象的集合。

希望能帮助到你。

You need to use some linq like this;

...
using (YourEntities ye = new YourEntities())
{
   Product myProduct = ye.Product.First(p => p.ProductId = idParameter);
   var bills = myProduct.Bill.Load();       
}
...

This assumes that you have used the entitiy framework to build a model for you data.
The bills variable will hold a collection of Bill objects that are related to your product object.

Hope it helps.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文