2016-11-28 12 views
2

私はPythonスクリプトでMysql Connectionを使用します。質問Pythonの名前でフィールドを取得するには?

名前でテーブルから結果を取得するにはどうすればよいですか?

cursor = conn.cursor() 
cursor.execute("SELECT * FROM local") 

今私は、インデックスで次の操作を行います。

私はなどのような名前でフィールドを取得したいことをする代わりに
results = cursor.fetchall() 
for row in results: 
    print row[0] // 

:プリントrow["name"]

+3

これを確認してくださいhttp://stackoverflow.com/questions/10195139/how-to-retrieve-sql-result-column-value-using-column-name-in-python – Anoop

+0

解決策が見つかりませんでした – Goga

答えて

1

辞書がTrueの場合は代わりにあなたが私はあなたがのmysql-コネクタを使用している場合、これは

+0

の回答を使用してください。Cent OSに' pandas'をインストールするには? – Goga

+0

pip install pandas –

0

あなたはPython用のMySQLdbを使用している場合は、に送信することができますあなたのカーソルインスタンスDictCursor。

>>> import MySQLdb 
>>> db = MySQLdb.connect(host="localhost",user="test",passwd="test",db="test") 
>>> cursor = db.cursor(MySQLdb.cursors.DictCursor) 
>>> cursor.execute("SELECT * FROM test_user") 
2 
>>> results = cursor.fetchall() 
>>> for result in results: 
... print(result["username"]) 
test1 
test2 

が、それは便利ですホープ:

は、ここでのMySQLdbを使用して完全な例です。

また、タプルの状況に適した回答を見つけることができます。 python mysql.connector DictCursor?

+0

not working "TypeError:タプルのインデックスはstrでなく整数でなければなりません" – Goga

+0

mysqlのどのモジュールを使用していますか? –

+0

'import mysql.connector' – Goga

3

を役に立てば幸いパンダライブラリ

​​

を使用することができ、この

cursor = conn.cursor(dictionary=True) 
cursor.execute("SELECT * FROM local") 
results = cursor.fetchall() 
for row in results: 
    print row['name'] 

をお試しくださいカーソルは行をディクショナリとして返します。

関連する問題