Как добиться «ОБНОВЛЕНИЕ ... ВЛЕВО НАРУЖНОЕ ...» только с языком выражений SQLAlchemy - PullRequest
0 голосов
/ 05 марта 2019

У меня есть эти таблицы ...

CREATE TABLE table_1 (
    id INTEGER PRIMARY KEY AUTO_INCREMENT,
    some_id INTEGER,
    state INTEGER
);

CREATE TABLE table_2 (
    id INTEGER PRIMARY KEY AUTO_INCREMENT,
    other_id INTEGER,
    state INTEGER
);

... и я ищу способ убедить SQLAlchemy создать этот необработанный оператор:

UPDATE
    table_1 t1
LEFT JOIN
    table_2 t2
ON
    t1.some_id = t2.other_id
SET
    t1.state = 0,
    t2.state = 0
WHERE
    t1.id = 1

I 'Я уверен, что есть способ использовать декларативный синтаксис, подзапросы или просто простой сырой SQL, но я ищу только SQLAlchemy-Expression-Language-way.Я часами искал ответ, но ничего не нашел о UPDATE s с LEFT JOIN s, поэтому мне любопытно, возможно ли вообще для SQLAlchemy сгенерировать такое утверждение.

...