Junior — Middle
Django ORM istifadə edərək mürəkkəb sorğular yazmaq təcrübəniz varmı?
sobes.tech Süni İntellekt
AI-dan cavab
Bəli, Django ORM-də mürəkkəb sorğular yaratmaq mümkündür; filter(), annotate(), aggregate() metodlarından və mürəkkəb şərtlər və sorğuların birləşdirilməsi üçün Q ifadələrindən istifadə edilə bilər. Məsələn, çoxsaylı şərtlər və anotasiya ilə sorğu edə bilərsiniz:
from django.db.models import Q, Count
# 1000-dən çox olan və ya bu il qeydiyyatdan keçmiş istifadəçiləri əldə et
users = User.objects.filter(
Q(orders__total__gt=1000) | Q(date_joined__year=2024)
).annotate(order_count=Count('orders'))
Bu sorğu Q istifadə edərək şərtləri birləşdirir və əlaqəli obyektlərin sayını annotate vasitəsilə əlavə edir. Django ORM mürəkkəb sorğular qurmağa imkan verir, eyni zamanda oxumaq və istifadə etmək asandır.