📅  最后修改于: 2023-12-03 15:07:38.764000             🧑  作者: Mango
在 Django 中,我们可以使用各种运算符对查询结果进行过滤。这使得我们能够轻松地从大量数据中获取有用的信息。下面是一些常用的运算符:
相等运算符 =
用于查询与指定值相等的数据。例如,以下代码将返回所有用户名为 'John' 的用户:
User.objects.filter(username='John')
请注意,相等运算符可以与其他运算符组合使用。例如,以下代码将返回所有年龄大于 18 岁且用户名为 'John' 的用户:
User.objects.filter(username='John', age__gt=18)
不等运算符 !=
用于查询与指定值不相等的数据。例如,以下代码将返回所有用户名不为 'John' 的用户:
User.objects.filter(username!='John')
大于运算符 >
和小于运算符 <
用于查询大于或小于指定值的数据。例如,以下代码将返回所有年龄大于 18 岁的用户:
User.objects.filter(age__gt=18)
以下代码将返回所有年龄小于等于 18 岁的用户:
User.objects.filter(age__lte=18)
大于等于运算符 >=
和小于等于运算符 <=
用于查询大于等于或小于等于指定值的数据。例如,以下代码将返回所有年龄大于等于 18 岁的用户:
User.objects.filter(age__gte=18)
以下代码将返回所有年龄小于 18 岁的用户:
User.objects.filter(age__lt=18)
in 运算符用于查询值在指定范围内的数据。例如,以下代码将返回年龄为 18、20 或 25 岁的用户:
User.objects.filter(age__in=[18, 20, 25])
contains 运算符用于查询包含指定字符串的数据。例如,以下代码将返回所有用户名包含 'John' 的用户:
User.objects.filter(username__contains='John')
icontains 运算符与 contains 运算符类似,但它忽略大小写。例如,以下代码将返回所有用户名包含 'john' 或 'JOHN' 的用户:
User.objects.filter(username__icontains='john')
除了这些基本运算符外,Django 还提供了各种高级运算符和过滤选项,可以帮助您更精确地查询数据。详细内容请参阅 Django 文档。