Лукап gte

Лукап gte применяется к полям модели в методах фильтрации и позволяет отбирать записи, у которых значение указанного поля больше или равно переданному значению. Он используется в паре с именем поля через двойное подчеркивание (например, 'price__gte') и может применяться к различным типам полей, таким как IntegerField, DateTimeField, DecimalField и другим числовым и датовым типам.

Синтаксис

pythonModel.objects.filter(field__gte=value)

Пример . С числовым полем

Рассмотрим модель 'Product' с полем 'price'. Давайте отберем товары, цена которых больше или равна 1000:

pythonfrom myapp.models import Product

res = Product.objects.filter(price__gte=1000)
print(res)

Результат выполнения кода:

python[<Product: Ноутбук>, <Product: Смартфон>, <Product: Планшет>]

Пример . С полем даты

Рассмотрим модель 'Order' с полем 'created_at'. Давайте отберем заказы, созданные после или в 1 января 2025 года:

pythonfrom myapp.models import Order
from datetime import date

res = Order.objects.filter(created_at__date__gte=date(2025, 1, 1))
print(res)

Результат выполнения кода:

python[<Order: Заказ #001>, <Order: Заказ #002>, <Order: Заказ #003>]

Пример . С комбинированными условиями

Давайте отберем товары, у которых цена больше или равна 500 и количество на складе меньше 10:

pythonfrom myapp.models import Product

res = Product.objects.filter(price__gte=500, stock__lt=10)
print(res)

Результат выполнения кода:

python[<Product: Смартфон>, <Product: Планшет>]

Пример . С использованием F-выражения

Давайте отберем товары, у которых цена больше или равна себестоимости:

pythonfrom myapp.models import Product
from django.db.models import F

res = Product.objects.filter(price__gte=F('cost'))
print(res)

Результат выполнения кода:

python[<Product: Ноутбук>, <Product: Планшет>]

Смотрите также

  • лукап gt,
    который отбирает записи с полем больше указанного значения
  • лукап lt,
    который отбирает записи с полем меньше указанного значения
  • лукап lte,
    который отбирает записи с полем меньше или равным указанному значению
  • лукап range,
    который отбирает записи с полем в указанном диапазоне