Dalam pengujian saya menemukan jawaban yang dipilih (konversi dict ke OrderedDict) tidak dapat diandalkan dalam mempertahankan urutan kolom hasil kueri.
Jawaban @vaultah dalam pertanyaan serupa
menyarankan menggunakan pymysql.cursors.DictCursorMixin
:
...untuk membuat kursor yang mengingat urutan kolom yang benar:
Kemudian dapatkan hasil Anda seperti biasa:
results = cursor.fetchall()
for row in results:
print row # properly ordered columns
Saya lebih suka pendekatan ini karena stabil, membutuhkan lebih sedikit kode, dan menangani pemesanan pada tingkat yang sesuai (saat kolom dibaca).