我正在使用sqlalchamy的postgres,并且已经通过sqlalchamy中的所有更新文档,但没有找到转换它的方法。
update test as t set
column_a = c.column_a
from (values
('123', 1),
('345', 2)
) as c(column_b, column_a)
where c.column_b = t.column_b;
我正在使用sqlalchamy的postgres,并且已经通过sqlalchamy中的所有更新文档,但没有找到转换它的方法。
update test as t set
column_a = c.column_a
from (values
('123', 1),
('345', 2)
) as c(column_b, column_a)
where c.column_b = t.column_b;
1条答案
按热度按时间91zkwejq1#
这并不完全正确,因为我没有给表测试添加别名,但它非常接近。也许我以后会想明白的。您需要生成精确的SQL吗?
我认为你需要使用values()
这使得这个SQL使用postgresql: