您可以做的是首先向MySQL询问a list of column names,然后根据该信息生成SQL查询.
SELECT column_name
FROM information_schema.columns
WHERE table_name = 'your_table'
AND column_name LIKE 'word%'
让我们选择列名称.然后你可以用Python做:
"SELECT * FROM your_table WHERE " + ' '.join(['%s = 1' % name for name in columns])
我建议使用SQLAlchemy来代替使用字符串连接,而不是使用字符串连接.
但是,如果您所做的只是限制列数,则根本不需要像这样执行动态查询.数据库的艰苦工作是选择行;向你发送10列中的5列或全部10列几乎没有什么区别.
在这种情况下,只需使用“SELECT * FROM …”并使用Python从结果集中挑选出列.
- 相关评论
- 我要评论
-