Думаю, подобный запрос должен работать. Если вам нужен список продуктов, у которых distance
меньше 40.
products = NearDuplicate.objects.filter(distance__lt=40).values('first_product', 'second_product')
Это даст результат, аналогичный
<QuerySet [{'first_product': 1, 'second_product': 2}]>
UPDATE - I немного поиграли с запросами. Если вы хотите получить абсолютный список товаров, присутствующих в любом из first_product
или second_product
. Возможно, вам потребуется использовать несколько запросов, например
q1= NearDuplicate.objects.filter(distance__lt=40).values_list('first_product', flat=True)
. Это даст результат как
<QuerySet [1]>
и
q2 = NearDuplicate.objects.filter(distance__lt=40).values_list('second_product', flat=True)
Это даст результат как
<QuerySet [2]>
Первый запрос запрашивает все продукты, перечисленные в first_product
, а второй запрос перечисляет все продукты, представленные в second_product
. Теперь вы можете объединить их обоих и извлечь отдельные значения, используя следующий запрос
q1.union(q2).distinct()
Это даст окончательный результат как
<QuerySet [1, 2]>
Надеюсь, это поможет. :)