Описание тега django-subquery

Вопросы о выражениях подзапросов Django
7 ответов

Django 1.11. Аннотирование агрегата подзапроса

Это отличная черта, на которой я в настоящее время нахожусь и быстро истекаю кровью. Я хочу аннотировать подзапрос-агрегат на существующий набор запросов. Делать это до 1.11 означало либо пользовательский SQL, либо удар по базе данных. Вот документа…
2 ответа

Использование подзапроса для аннотирования графа

Пожалуйста, помогите мне, я застрял на этом слишком долго:( Что я хочу сделать: У меня есть эти две модели: class Specialization(models.Model): name = models.CharField("name", max_length=64) class Doctor(models.Model): name = models.CharField("name"…
0 ответов

Django подзапрос и аннотации с OuterRef

У меня проблемы с использованием annotate() с OuterRef в подзапросах Django 1.11. Пример модели: class A(models.Model): name = models.CharField(max_length=50) class B(models.Model): a = models.ForeignKey(A) Теперь запрос с подзапросом (который на са…
03 ноя '17 в 11:43
0 ответов

DJANGO: Значение аннотации НЕТ после выполнения подзапроса

Это мои модели: class Stockdata(models.Model): stock_name = models.CharField(max_length=32,unique=True) class Stock_Total_sales(models.Model): sales = models.ForeignKey(Sales,on_delete=models.CASCADE,null=True,blank=False,related_name='saletotal') s…
1 ответ

Вложенные подзапросы в Django

Попасть в глубокую воду с помощью Subquery. У меня есть набор Carparks. Carparkс несколькими Bookings. Заказы имеют много BarrierActivity записи, которые представляют собой различные приходящие и уходящие события на барьерах. Это все простые ФК в ст…
07 июн '17 в 11:53
3 ответа

Django условный агрегат подзапроса

Упрощенный пример структуры моей модели будет class Corporation(models.Model): ... class Division(models.Model): corporation = models.ForeignKey(Corporation) class Department(models.Model): division = models.ForeignKey(Division) type = models.Intege…
25 июн '18 в 14:11
1 ответ

Сумма полей подзапроса django

У меня есть следующий подзапрос: Subquery( ContestTaskRelationship.objects.filter( contest=contest, solved=OuterRef('id') ).values('cost').all() ) Мне нужно, чтобы аннотировать мой QuerySet с суммой cost значения, возвращаемые каждым подзапросом. Ка…
29 июн '18 в 10:04
0 ответов

Фильтр Django по дате, содержащейся в любом диапазоне дат

Я пытаюсь отфильтровать модель, которая имеет DateField (дата), чтобы получить queryset случаев, чья дата есть в любом из списка DateRanges но я изо всех сил пытаюсь понять точную логику, в которой я нуждаюсь. Так, например, если у меня есть следующ…
29 сен '18 в 16:47
1 ответ

Подзапрос Django выдает "более одной строки, возвращенной подзапросом, используемым в качестве выражения"

Я недавно обновился до Django 1.11, и я хочу использовать недавно выпущенный, Subquery exrpession особенность. Есть две модели следующим образом class Project(models.Model): title = models.CharField(_("Project Name"), max_length=128) class PrivateDo…
06 июн '18 в 14:22
2 ответа

Как получить псевдоним таблицы для внутреннего соединения в Django

Я использую django 2.1, python 3.6 и SQL Server 2012 в качестве бэкэнда. У меня есть следующие модели: class ModelA(models.Model): name = models.CharField(...) value = models.PositiveIntegerField(...) class ModelB(models.Model): name = models.CharFi…
2 ответа

Как выполнить двойной шаг подзапроса в Django?

У меня есть следующие модели: class Group(models.Model): group_name = models.CharField(max_length=32) class Ledger(models.Model): ledger_name = models.CharField(max_length=32) group_name = models.ForeignKey(Group,on_delete=models.CASCADE,null=True,r…
08 июл '19 в 19:15
1 ответ

Аннотация с подзапросом с множественным результатом в Django

Я использую базу данных postgresql в своем проекте, и я использую приведенный ниже пример из документации django. from django.db.models import OuterRef, Subquery newest = Comment.objects.filter(post=OuterRef('pk')).order_by('-created_at') Post.objec…
1 ответ

Аннотации Django суммой двух значений с несколькими отношениями

У меня 4 модели: class App(models.Model): ... class AppVersion(models.Model): app = models.ForeignKey(App) version_code = models.IntegerField() class Meta: ordering = ('-version_code',) ... class Apk(models.Model): version = models.OneToOneField(App…
30 сен '19 в 20:11
0 ответов

Django аннотирует количество сложных подзапросов

У меня такая модель: class Visit(models.Model): ... device_id = models.CharField(...) created_at = models.DateTimeField(auto_now_add=True) ... Эта модель в основном обозначает посещение места, device_id однозначно идентифицирует человека, и один и т…
1 ответ

Django Exists() / ~Exists() вернуть, если нет совпадающих данных?

РЕДАКТИРОВАТЬ: В соответствии с ответом Шиллингта ниже я переключился на использование Case/When: context['db_orders'] = Order.objects.filter( retailer_code=self.object.retailer_code).annotate( in_db=Case(When(Q(Subquery(self.object.suppliers.filter…
1 ответ

Django: аннотировать список связанных полей

У меня есть модели Company и User со связанной моделью CompanyRecruiter: class CompanyRecruiter(models.Model): organization = models.ForeignKey(Company, related_name="company_recruiters") recruiter = models.ForeignKey(User, related_name="company_rec…
0 ответов

Django, используйте подзапросы вместо фильтрации по QuerySet, преобразованному в список

У меня есть две связанные модели: class Execution(models.Model): name = models.CharField("Test Suite Name", max_length=1024) <...> class TestCase(models.Model): name = models.CharField("Test Case Name", max_length=1024) result = models.CharFie…
1 ответ

Агрегатное аннотированное поле из подзапроса в Django

Я пытаюсь реализовать подзапрос с помощью Django ORM, но не могу найти рабочего решения. SQL-запрос, который мне нужно было бы реконструировать, следующий: select t1.location, sum(t1.value_relative::numeric) as total from ( select administrative_div…
1 ответ

Обобщенная аннотация подзапроса с фильтром по внешней ссылке ForeignKey

Я пытаюсь закодировать эквивалентный запрос Django из этого SQL-запроса, но застрял. Любая помощь приветствуется. Я получаю гонкуid и по этой гонке я хочу сделать некоторую статистику: nb_race = количество скачек лошади перед данной гонкой, best_chr…
0 ответов

подзапрос clausulas из Python

Я пытаюсь преобразовать этот запрос из MySQL в Django, но я не знаю, как сделать вложенный выбор в python, пожалуйста, не могли бы вы мне помочь? SELECT zet.zone, SUM(CASE WHEN zet.`status` = 'available' THEN zet.total ELSE 0 END) AS `ge_available`,…