从列表中筛选为查询字符串postgresql-flask-sqlalchemy



我将列表作为查询字符串传递,并且我希望从数据库中检索具有所有列表值的值的数据。列表值表示列的值。我的代码看起来像这样:

companylist=['a','b','c']
sql = text("""select * from company_data cd  where cd.company_id=:companyId""")
priceItem = connection.execute(sql, id=id, companyId=companylist).fetchAll()

这就是表格的样子:

create table company_data
(
id    varchar(255) primary key,
company_id   text,
price    text,
volume text
);

我只想根据数据库列表中的值筛选所有值,而且列表不能大于20。我该如何解决这个问题?

我不了解text(),并在execute()中插入值,在这里我将其转换为字符串格式的sql命令。

companylist=['a','b','c']
sql = ("""select * from company_data cd  where cd.company_id = ANY(ARRAY{})""".format(companylist))
priceItem = connection.execute(sql).fetchAll()

这是指

WHERE column = ANY(ARRAY([a, r, r, a, y]))

最新更新