使用sqlalchemy将元组列表插入select语句的VALUE子句

使用sqlalchemy将元组列表插入select语句的VALUE子句,sqlalchemy,psycopg2,Sqlalchemy,Psycopg2,我需要根据我经常在数据库之外计算的值列表连接postgresql表 这似乎是我想提出的查询类型 SELECT id FROM elements JOIN (VALUES (1, 0.1), (3, 0.4), (2, 0.05)) as priorities (id, priority) USING (id) 我想动态创建值元组。但是我似乎找不到一个好的方法用SQLAlchemy来实现这一点 priorities = [(1, 0.1), (3, 0.4), (2, 0.05)] engin

我需要根据我经常在数据库之外计算的值列表连接postgresql表

这似乎是我想提出的查询类型

SELECT id
FROM elements
JOIN (VALUES (1, 0.1), (3, 0.4), (2, 0.05)) as priorities (id, priority)
USING (id)
我想动态创建
元组。但是我似乎找不到一个好的方法用SQLAlchemy来实现这一点

priorities = [(1, 0.1), (3, 0.4), (2, 0.05)]

engine.execute("SELECT id
                FROM elements
                JOIN (VALUES :priorities) as priorities (id, priority)
                USING (id)",
               priorities = priorities)

优先级
强制转换为
数组

如果需要在文本SQL查询中使用
,则需要参数化
子句中的每个单独值(即
值(:val1,:val2),(:val3,:val4),…
)。您可以将
非最值(:优先级)作为优先级进行连接(id int,priority numeric)
或诸如此类,我认为。如果需要在文本SQL查询中使用
,则需要参数化
子句中的每个单独值(即
值(:val1,:val2),(:val3,:val4),…
)。您可以
将unest(:priorities)作为优先级加入(id int,priority numeric)
或者类似的,我想。