我有一个表,想要找到name
列为None的所有行。
我应该这样做:
MyThing.objects.filter(name=None)
或
MyThing.objects.filter(name__isnull=True)
它有什么不同?
答案 0 :(得分:2)
答案 1 :(得分:2)
快速检查控制台为我输出如下内容:
str(MyThing.objects.only('name').filter(name=None).query)
# 'SELECT `myapp_mything`.`id`, `myapp_mything`.`name` FROM `myapp_mything` WHERE `myapp_mything`.`name` IS NULL ORDER BY `myapp_mything`.`name` ASC'
str(MyThing.objects.only('name').filter(name__isnull=True).query)
# 'SELECT `myapp_mything`.`id`, `myapp_mything`.`name` FROM `myapp_mything` WHERE `myapp_mything`.`name` IS NULL ORDER BY `myapp_mything`.`name` ASC'
所以它们看起来是一样的。