python - 如何不解压查询返回的所有内容?

标签 python mysql python-3.x mysql-connector-python

我有以下查询(注意不是正常的 SELECT):

sql = "SHOW PROCEDURE STATUS WHERE Db <> 'sys' "

这个问题返回了很多字段,我只需要前两个,查看完整代码:

sql = "SHOW PROCEDURE STATUS WHERE Db <> 'sys' "
self.cursor.execute(sql)
res = [(Db,Name) for(Db,Name,a,b,c,d,e,f,g,h,j) in self.cursor]

为了不出错,我需要添加所有那些我什么都不做的a...j变量。
我如何以更简洁的方式编写它?

我正在使用 Mysql/Oracle 提供的连接器

最佳答案

不要一开始就将行解压缩到多个变量中。只需将行放入一个变量中,然后从中获取你想要的内容。

[(row[0], row[1]) for row in self.cursor]

或者甚至:

[row[:2] for row in self.cursor]

关于python - 如何不解压查询返回的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37999159/

相关文章:

PHP和mysql根据mysql时间戳在截止日期后查询

python - 从列表中删除项目(如果存在)

python - python中的异步执行

mysql - 意外符号 'NONE' 存档引擎 - MariaDB DBForge

php - 我在日志中遇到错误,但是脚本可以满足我的要求

python - ImportError 出现在 py.test 中,但在运行应用程序时不会出现

python - 是否可以在附魔中传递多个字典?

python - 如何在数据框中旋转包含字符串的一列?

python - 通过从数据帧中的多列进行条件选择进行向量算术

python - 无法在 Ubuntu Python 2.7 中导入 GTK