如何检索每个销售订单的多个字段的值?

2024-05-15 20:44:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我在销售订单与之相关的模型车队.车辆型号(id)。在

如下图所示:

图1:enter image description here

嗯,“x_vehiculo”字段是一个多选字段,如下图所示:

图2:enter image description here

我的想法是,对于每个销售订单,我可以存储更多的一辆车。在

问题是,当我在SGB Postgresql(PgAdmin III)中进行查询时,无法看到每个销售订单的x_vehiculo'字段的值。在

图3:enter image description here

有任何方法可以检索每个“x”车辆多选字段的值订单销售?在

如果有人能帮我的话。我会非常感激的。在

非常感谢你


Tags: 方法订单模型idpostgresqliii型号我会
2条回答

字段在您声明的表上不可用,它是一个多个关系,因此将为它创建一个单独的“join”表,该表的名称为

x_fleet_vehicle_sale_order_rel

该表将包含字段sale_order_idfleet_vehicle_id

所以您应该查询该表,而不是您声明x_vehiculo的表

关系不存储在sale_order表中。因为它是many2many,所以它存储在一个关系表中。根据屏幕截图,您的关系表如下:x_fleet_vehicle_sale_order_rel

要查询车辆,您必须通过此表进行连接,如下所示:

select so.name, fv.name
from sale_order so
left join x_fleet_vehicle_sale_order_rel rel on (rel.sale_order_id = so.id)
left join fleet_vehicle fv on (fv.id = rel.fleet_vehicle_id);

这将为sale.order和{}的每个组合提供一行。如果要按销售订单对它们进行分组,可以执行以下操作:

^{pr2}$

这将为每个sale.order返回一行,并将fleet.vehicle名称的列表附加到该顺序。在

相关问题 更多 >