3
这么多慢我的代码如下两个部分:为什么Django的ORM比原始的SQL
首先,在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是“对象 - 关系映射”的首字母缩写。对每一行实例化一个完整的对象可能是“麻烦”,但这是作为一个ORM的本质,另一个提问者进行了一些测试,并确定Django 1.8+在性能上有了比原始SQL方式更大的改进做事。 – Bobort 2016-10-10 18:22:59