如何获得Django orm查询所花费的时间?

2024-06-17 12:06:32 发布

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

如何获得django orm查询所花费的时间?

另外,以下哪个查询更快?在

ShipmentPPTLMapping.objects.get(shipment_id = shipment_id)

ShipmentPPTLMapping.objects.filter(shipment_id = shipment_id)[0]

也适用于这些查询。哪个更快

ShipmentPPTLMapping.objects.filter(pptl_id = pptl_id).exclude(bag_seal_status = 'close').count())

ShipmentPPTLMapping.objects.filter(pptl_id = pptl_id,bag_seal_status = 'open').count())


Tags: djangoidgetobjectsstatuscount时间orm
1条回答
网友
1楼 · 发布于 2024-06-17 12:06:32

一种选择是使用django-debug-toolbar:它测量对每个视图执行的每个查询。在

这是任何django应用程序上的一个必须。在

关于其他问题:

  1. 我想说它们是等价的。在Django代码中,get使用filter并检索第一个元素。

  2. 也应该是等价的,因为filter和{}只是filter(Q(...))和{}的不同名称,并且链接相当于有一个逗号:查询通过AND连接。 但是,由于在一个中使用"open",而在另一个中使用"close",这可能会对特定后端的执行方式产生影响,而且可能只有通过分析才能衡量这种差异。

相关问题 更多 >