用于 MySQL 查询执行的 python StringBuilder

标签 python mysql query-string stringbuilder

我正在尝试查询我的数据库,其中一列是 python 变量:

weekNum = "week" + str(i)               #i is either 2, 3, 4, 5
cur.execute("select %s from golden_table where nGram = %s and hash_tag = %s", (weekNum, tup[0], tup[1]))

请注意,SQL 表:golden_table 包含 4 列:week2 week3 week4 week5。 但是,python 或 MySQL 不会将 weekNum 的值视为列。相反,查询返回的是值“weeki”。其中 i 如上所述。在 Java 中,我知道解决这个问题的方法是使用 StringBuilder 类。

  1. 在 python 中解决这个问题的等效方法是什么?
  2. 在 python 中解决这个问题的更好方法是什么?

感谢所有帮助,如果您需要更多信息,请告诉我。

最佳答案

如果您的 python 版本是最新的(2.6+)。您可以使用格式。

weekNum = "week" + str(i)               #i is either 2, 3, 4, 5
query = "select {0} from golden_table where nGram = %s and hash_tag = %s".format(weekNum)
cur.execute(query, (tup[0], tup[1]))

关于用于 MySQL 查询执行的 python StringBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17779005/

相关文章:

python - Django 1.5 多用户身份验证或

python - 如何在 Keras、Tensorflow 中导入 LSTM

php - 如何显示我的帖子以及关注者帖子 MySQL

c# - 如何使用我的 C# 应用程序连接到远程 MySQL 服务器

php - 多查询 PHP 问题

java - 如何使用 Java HttpServer/HttpExchange 在 GET 中获取查询字符串?

python - 类型映射中的 SWIG 有效,但 argout 无效

PHP - 如何在带有 RT 索引的 Sphinx 中配置通配符和模糊搜索

javascript - 有效的查询参数 - 在 URL 中传递数据

python - 我可以使用通过参数传递的函数吗?