Abrufen von Spaltennamen aus SQL-Abfragen mit MySQL
In MySQL kann das Extrahieren von Spaltennamen aus Abfrageergebnissen mithilfe des Attributs „cursor.description“ erreicht werden . Dieses Attribut gibt ein Tupel von Tupeln zurück, wobei jedes innere Tupel einen Spaltenkopf darstellt. Der folgende Python-Codeausschnitt zeigt, wie man sowohl die Spaltennamen als auch die Anzahl der Spalten in einem Abfrageergebnis erhält:
<code class="python">import MySQLdb # Connect to MySQL try: db = MySQLdb.connect(host="myhost", user="myuser", passwd="mypass", db="mydb") except MySQLdb.Error as e: print("Error %d: %s" % (e.args[0], e.args[1])) sys.exit(1) # Execute a 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 names field_names = [i[0] for i in cursor.description] # Get number of columns num_fields = len(cursor.description) # Print column names print("Column Names:") for name in field_names: print(name) # Print number of columns print("Number of Columns:", num_fields) # Close cursor and db cursor.close() db.close()</code>
Angenommen, die Abfrage gibt in diesem Beispiel die Spaltennamen ext, totalsize und filecount zurück. Die Liste „field_names“ enthält diese Spaltennamen und die Variable „num_fields“ wird auf 3 gesetzt, was die Anzahl der Spalten im Ergebnissatz angibt.
Dieser Ansatz bietet eine einfache Lösung zum Erhalten von Spaltennamen, ohne auf benutzerdefiniertes SQL zurückgreifen zu müssen Parsing-Logik.
Das obige ist der detaillierte Inhalt vonWie rufe ich Spaltennamen aus SQL-Abfragen in MySQL ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!