【问题标题】:LINQ query to MySQL对 MySQL 的 LINQ 查询
【发布时间】:2021-06-30 06:54:40
【问题描述】:

请任何人帮助我处理与以下 LINQ 等效的 MySQL 查询

var orders = _dbContext.Orders.Where(order => order.Id == orderId)
                   .Include(order => order.OrderDetails); 

【问题讨论】:

  • SELECT * FROM orders WHERE id = @id ORDER BY order_details?
  • 不就是SELECT OrderDetails FROM orders WHERE Id = 'orderId';,你需要替换orderId变量吗?
  • 没有等价物。 SQL 不返回带有嵌套对象的对象。我不明白这个问题,您可以简单地检查生成的 SQL,但这不是等价的,它只是获取构造对象的数据的手段

标签: c# mysql linq


【解决方案1】:

对表的名称以及主键和外键进行一些假设,SQL 看起来像这样。

select order.*, order_detail.* 
from order 
inner join order_detail 
on order.id = order_detail.order_id
where order.id = @order_id

【讨论】:

  • 不客气。不过再看一遍,我可能应该说左连接而不是内连接,因为内连接会排除没有关联详细信息行的订单。
猜你喜欢
  • 1970-01-01
  • 2020-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多