【发布时间】:2012-02-19 22:59:06
【问题描述】:
使用 Django 1.3x。
我目前有一个非常非常大且非常活跃的 Postgres 数据集,其中有一个重要的列索引为 lower(column)。
我刚刚意识到一些常见的查询非常慢,因为当我使用iexact 匹配该字段时,Django ORM 正在为该字段生成一个查询为blah = UPPER(column)。
有没有一种简单的方法可以强制 ORM 使用 lower(),或者我需要为此使用原始 SQL 吗?
谢谢!
[对 cmets 的附加问题:是否有充分的理由(被忽视)在索引上使用 upper(),而不是 lower()?]
【问题讨论】:
标签: django postgresql django-orm