ホームページ  >  記事  >  データベース  >  MySQLdb を使用して Python で MySQL クエリ結果セットから列名を取得するにはどうすればよいですか?

MySQLdb を使用して Python で MySQL クエリ結果セットから列名を取得するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-05 08:41:02212ブラウズ

How to retrieve column names from a MySQL query result set in Python using MySQLdb?

MySQL: クエリ結果から列ヘッダーを取得する

質問:

どのように取得できますかMySQLdbを使用してPythonでMySQLクエリ結果セットからの列名またはエイリアスを取得しますか?要件は、結果セット内の列名が SQL クエリで指定された選択された列と一致する必要があることです。

回答:

MySQLdb を使用して MySQL クエリ結果セットを取得するには、次の手順に従います。

  1. cursor.execute() を使用して MySQL クエリ ステートメントを実行します。
  2. cursor.description を使用して、結果セット内の各列のメタデータ。各タプルの最初の項目 ([0]) は列名またはエイリアスです。
  3. クエリによって返される列の数を取得するには、len(cursor.description) を使用します。

コード例:

<code class="python"># Python

import MySQLdb

# Connect to MySQL
db = MySQLdb.connect(host="myhost", user="myuser", passwd="mypass",db="mydb")

# Execute the query
sql = """
    SELECT ext,
        SUM(size) AS totalsize,
        COUNT(*) AS filecount
    FROM fileindex
    GROUP BY ext
    ORDER BY totalsize DESC;
"""
cursor = db.cursor()
cursor.execute(sql)

# Get column names
column_names = [i[0] for i in cursor.description]

# Print results
while (1):
    row = cursor.fetchone ()
    if row == None:
        break
    print("%s %s %s\n" % (row[0], row[1], row[2]))

# Get number of columns
num_fields = len(cursor.description)

# Close cursor and database connection
cursor.close()
db.close()      

print("Number of columns:", num_fields)
print("Column names:", column_names)</code>

以上がMySQLdb を使用して Python で MySQL クエリ結果セットから列名を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。