我不是要获取所有重复的querysets
,也不是要比较两个queryset
的结果,并且发现两个比较是相同的。
不知何故,我还不知道这是怎么发生的,但是有时有些记录被保存了两次,有些却没有。因此,当我执行querying
时,我的结果有时会重复。
例如,我只是在做Model.objects.filter(user='myname')
我可能会得到50 instances
的回报,所有这些都应该有所不同。但是以某种方式,也许11
和12
的值与23
和24
的值完全相同,而其他值完全一样。
实际上,在这50个instances
中,有2个duplicates
,这意味着我应该只有48个instances
,而不是50个。
如果值完全相同,是否可以检查查询集并仅返回与其他查询集重复的一个?
答案 0 :(得分:0)
您可以在orm查询中使用“ distinct”来做到这一点,例如SELECT "images.file" FROM "measurements"
INNER JOIN "images" ON "element_images"."measurement_id" = "measurements"."id"
INNER JOIN "images" ON "element_images"."id" = "images"."image_id"
WHERE "measurements"."element_id" = $1`
这只会根据您提供的字段为您提供不同的值。