Блог Синявского
  • Разделы
  • Метки
  • Все статьи

Запросы в SQLAlchemy

1

Запросы в SQLAlchemy

Все алхимики должны знать эти рецепты и держать их в памяти.

Одна колонка

elements = db.session.query(MyClass.id).all()

Значение больше или меньше даты

elements = db.session.query(MyClass).filter(
    db.func.date(MyClass.date_start) <= my_date,
    db.func.date(MyClass.date_end) >= my_date
).all()

Значение в списке IN

my_list = [...]
elements = db.session.query(MyClass).filter(
    MyClass.id.in_(my_list)
).all()

Случайная выборка

import random

my_query = db.session.query(MyClass)
elements_count = int(my_query.count())
random_element = my_query.offset(int(elements_count*random.random())).first()


  • ← сюда
  • туда →

comments powered by Disqus

Опубликовано

18.02.2018

Обновление

04.04.2022

Категории

flask

Тэги

  • flask 3
  • python 30
  • sqlalchemy 1

Всегда на связи

  • Блог Синявского - Ничего не переносить на завтра, это тоже проблема с прокастинацией?
  • © Алексей Синявский, по лицензии CC BY-SA если не указано иное.
  • С использованием Pelican. Тема: Elegant от Talha Mansoor