Mendapatkan Nama Lajur daripada Pertanyaan SQL Menggunakan MySQL
Dalam MySQL, mengekstrak nama lajur daripada hasil pertanyaan boleh dicapai menggunakan atribut cursor.description . Atribut ini mengembalikan tuple tuple, dengan setiap tuple dalam mewakili pengepala lajur. Coretan kod Python berikut menunjukkan cara untuk mendapatkan kedua-dua nama lajur dan bilangan lajur dalam hasil pertanyaan:
<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>
Dalam contoh ini, katakan pertanyaan mengembalikan nama lajur ext, saiz keseluruhan dan bilangan fail. Senarai field_names akan mengandungi nama lajur ini dan pembolehubah num_fields akan ditetapkan kepada 3, menunjukkan bilangan lajur dalam set hasil.
Pendekatan ini menyediakan penyelesaian mudah untuk mendapatkan nama lajur tanpa menggunakan SQL tersuai menghurai logik.
Atas ialah kandungan terperinci Bagaimana untuk Mengambil Nama Lajur daripada Pertanyaan SQL dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!