python - 如何使用参数在 SELECT 语句中选择一列或多列

标签 python sqlite

我正在尝试创建一个能够从 SQLite 3 表中选择特定列的函数。我们的想法是做这样的事情:

con = sqlite3.connect("my_db.db")
cursor = con.cursor()
def my_func(parameter_list):
    con.execute("SELECT parameter_list FROM a_table")
    return cursor.fetchall()

其中 parameter_list 包含用户想要选择的列的名称。

我尝试过使用 ? 占位符,但是:

  1. 我仍然需要在 SELECT 语句本身中使用固定金额;
  2. 由于某种原因,输出是列的名称,而不是内容。我想要做的是让用户确定列数以及他想要获取的列。

最佳答案

您需要为列获取一个以逗号分隔的字符串,对吧?可以像他一样完成:

"SELECT {} FROM a_table".format(','.join(parameter_list))

关于python - 如何使用参数在 SELECT 语句中选择一列或多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31232001/

相关文章:

python - 如何创建接受文本字符串并返回包含某些已定义字符出现次数的字典的函数,即使不存在?

python - os.environ 没有设置环境变量

python - 名称错误 : global name 'client' is not defined

python - 将属性注入(inject) QML 组件

ios - 当应用程序变为事件状态时,文件已加密或不是数据库消息

python - 为什么当 Enum 值不匹配时,这个 Python 函数不会抛出错误?

java - 如何在 SQLite android 中管理列表?

database - BlackBerry 设备存储上的 SqLite 数据库

java - 如何在 android studio 中从 SQLite 检索图像

mysql - 具有最佳插入/秒性能的数据库?