gpt4 book ai didi

python - 为什么 django ORM 比原始 SQL 慢得多

转载 作者:可可西里 更新时间:2023-11-01 07:52:25 25 4
gpt4 key购买 nike

我有以下两段代码:

首先,在 SQL 中:

self.cursor.execute('SELECT apple_id FROM main_catalog WHERE apple_id=%s', apple_id)
if self.cursor.fetchone():
print '##'

接下来,在 Django 中:

if Catalog.objects.filter(apple_id=apple_id).exists():
print '>>>'

在 100k 条目的循环中,第一种方式比第二种方式快 4 倍。是什么导致 Django 如此慢?

最佳答案

通常 ORM 会为每一行实例化一个完整的对象并返回它。您的原始 SQL 不会那样做,因此它不会承受由此产生的损失。对于您不打算使用该对象的大型结果集,最好绕过 ORM。

关于python - 为什么 django ORM 比原始 SQL 慢得多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25696120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com