django - Django 的“精确”字段查找是否执行不区分大小写的搜索?
问题描述
根据我在 Django 手册上阅读的内容,我认为exact
字段查找会执行区分大小写的搜索,但是,当我这样做时
FormZBaseElementExtraLabel.objects.filter(label__exact='his6')
我得到以下输出
<QuerySet [<FormZBaseElementExtraLabel: HIS6>]>
显然不区分大小写,实际上与默认的filter
or相同iexact
。
关于可能是什么问题的任何想法?
谢谢
解决方案
感谢大家的回答。事实上,我已经意识到我使用 MySQL (MariaDB) 和 collation utf8mb4_unicode_ci
,这解释了为什么exact
查询查找不区分大小写。
如所指出的,在不更改基础数据库(或其某些列)的排序规则的情况下,以下搜索区分大小写FormZBaseElementExtraLabel.objects.filter(label__contains = 'his6').filter(label = 'his6')
。或者,可以使用此处解释的 raw 方法运行自定义查询。
推荐阅读
- ads - 使用 DFP 为小型企业提供叠加层和徽标的视频
- apache - cakephp css/js 未加载
- sql - 为什么即使第一个为真,也会检查多个 OR 条件?
- sql - 在 MSSQL 中使用附加的 max() 条件从数据库中检索每个组中的最后一条记录
- apache-spark - python spark在elasticsearch中写入时间戳
- javascript - 操作三个数组
- c++ - 基于模板成员存在的 C++ 成员重载
- python - 在 Google Colab 中运行 2 个 python 脚本
- apache-spark - 如何在 Spark SQL 中将多列分解为行
- python - 从 pd.Series.value_counts 输出中删除最后一行