【发布时间】:2020-11-19 13:21:37
【问题描述】:
我试图在 for 循环中从几个不同的表中选择数据列,每个表名都以数字开头,标题为 0_training_market 到 155_training_market。 要在 sql 语句中使用以数字开头的表,我必须在该标题周围使用一对额外的引号,这只会将我的变量转换为字符串并且不会读取实际变量。这是我的代码和错误:
for j in list(range(156)):
generation = str(j)+'_training_market'
energy_source = db.query(" SELECT energy_source FROM " + generation + " WHERE id < 100 ORDER BY id ")
quantity = db.query(" SELECT quantity FROM " + generation + " WHERE id < 100 ORDER BY id ")
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.SyntaxError) syntax error at or near "0"
LINE 1: SELECT energy_source FROM 0_training_market WHERE id < 100 ...
^
[SQL: SELECT energy_source FROM 0_training_market WHERE id < 100 ORDER BY id ]
我不知道如何解决这个问题,因此感谢您提供任何帮助。谢谢
【问题讨论】:
标签: sql database postgresql dataset