MySQL数据库表中有如下数据,想查询is_super为0、status为1的记录
下列语句能查询到想要的记录吗,如果查询不到,要怎么修改呢?
query = Q(status=1) | Q(is_super=0)
User.objects.filter(query)
MySQL数据库表中有如下数据,想查询is_super为0、status为1的记录
下列语句能查询到想要的记录吗,如果查询不到,要怎么修改呢?
query = Q(status=1) | Q(is_super=0)
User.objects.filter(query)
登录后即可发布作业,立即登录
全部作业 25
给出的查询语句是:
python
query = Q(status=1) | Q(is_super=0)
User.objects.filter(query)
这里使用的是类似 Django 框架中查询集(QuerySet)的语法,Q对象用于构建复杂查询条件。|是逻辑或(OR)操作符。但题目要求的是同时满足is_super为 0 和status为 1 ,即逻辑与(AND)关系,当前语句用的是逻辑或,所以不能查询到想要的记录。
修改方法:
将逻辑或|改为逻辑与&,修改后的语句如下:
python
query = Q(status=1) & Q(is_super=0)
User.objects.filter(query)
这样就能查询出同时满足is_super为 0 且status为 1 的记录了。