📜  在 django 中使用不同的运算符进行过滤 - Python (1)

📅  最后修改于: 2023-12-03 15:07:38.764000             🧑  作者: Mango

在 Django 中使用不同的运算符进行过滤

在 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 运算符

in 运算符用于查询值在指定范围内的数据。例如,以下代码将返回年龄为 18、20 或 25 岁的用户:

User.objects.filter(age__in=[18, 20, 25])
contains 和 icontains 运算符

contains 运算符用于查询包含指定字符串的数据。例如,以下代码将返回所有用户名包含 'John' 的用户:

User.objects.filter(username__contains='John')

icontains 运算符与 contains 运算符类似,但它忽略大小写。例如,以下代码将返回所有用户名包含 'john' 或 'JOHN' 的用户:

User.objects.filter(username__icontains='john')

除了这些基本运算符外,Django 还提供了各种高级运算符和过滤选项,可以帮助您更精确地查询数据。详细内容请参阅 Django 文档。

参考链接

Django 文档