首页  >  文章  >  数据库  >  如何使用 Python 从 MySQL 查询中检索列标题?

如何使用 Python 从 MySQL 查询中检索列标题?

Patricia Arquette
Patricia Arquette原创
2024-11-06 20:30:03996浏览

How can I retrieve column headers from a MySQL query using Python?

从 MySQL 查询中检索列信息

使用 MySQLdb 开发 Python 应用程序时,一项常见任务是执行 SQL 查询并检索结果列名称和值。默认情况下,cursor.fetchall() 仅返回不包含列信息的数据。

要获取列标题,请使用cursor.description 属性。它提供了一个元组的元组,其中每个内部元组都包含有关列的信息。每个内部元组的第一个元素是列标题。

为了准确反映 SQL 查询中用户指定的列,请考虑以下步骤:

<code class="python">cursor.execute(sql)
num_fields = len(cursor.description)
field_names = [i[0] for i in cursor.description]</code>

此代码检索查询结果中的列,并从cursor.description属性创建列标题列表。

在您的特定Python示例中,您可以修改代码以提取列名称:

<code class="python">import MySQLdb

# Connect to MySQL

db = MySQLdb.connect(...)

# Execute the query

cursor = db.cursor()
cursor.execute("""
select ext,
       sum(size) as totalsize,
       count(*) as filecount
from fileindex
group by ext
order by totalsize desc;
""")

# Get column headers

num_fields = len(cursor.description)
field_names = [i[0] for i in cursor.description]

# Fetch and print the results

while (1):
    row = cursor.fetchone()
    if row == None:
        break
    print(" ".join("{}={}".format(field_names[i], row[i]) for i in range(num_fields)))

cursor.close()
db.close()</code>

此增强型代码现在可以正确检索并打印每行的列标题和相应的数据值。

以上是如何使用 Python 从 MySQL 查询中检索列标题?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn