我有查询,显示不同的结果,当我使用和或&
criteria1 = Q(id__gte=802, id__lte=1000)
criteria2 = Q(country_id__contains='UK')
Run Code Online (Sandbox Code Playgroud)
我一直在使用:
q = Mymodel.objects.filter(criteria1 & criteria2)
Run Code Online (Sandbox Code Playgroud)
但在这个特殊情况下,当我使用& 它总是输出一行. (我也查了打印q.query(),查询出来就好了)
但是,当我使用而不是&时.查询提供正确的输出
q = Mymodel.objects.filter(criteria1 and criteria2)
Run Code Online (Sandbox Code Playgroud)
引擎盖下究竟发生了什么?