#sqlalchemy
#sqlalchemy
Вопрос:
Используя SQLAlchemy ORM, я хотел бы добавить вычисляемый столбец, а затем отсортировать по этому столбцу. Вычисляемый столбец — это максимальное значение двух других столбцов (я пытаюсь найти самое последнее взаимодействие между двумя контактами, и они могут взаимодействовать либо через «электронную почту», либо «заметки»).
Я создал оператор case when, который корректно возвращает самое последнее взаимодействие:
calculatedLastInteraction = case([
(
(organization_note.time == None) amp; (contact.last_interaction_time_email != None),
contact.last_interaction_time_email
),
(
(contact.last_interaction_time_email == None) amp; (organization_note.time != None),
organization_note.time
),
(
contact.last_interaction_time_email >= organization_note.time,
contact.last_interaction_time_email
),
(
organization_note.time > contact.last_interaction_time_email,
organization_note.time
)
],
else_ = None).label('calculatedLastInteractionDate')
Как мне добавить этот столбец в существующий запрос SQLAlchemy?