Kei*_*thx 2 python sql pymssql pandas
有一个问题。如何将 sql 查询中的列名添加到 Pandas 数据框。我正在做下一步,但 columns=columns 在我的情况下不起作用。
import pymssql
import pandas as pd
con = pymssql.connect(
server="MSSQLSERVER",
port="1433",
user="us",
password="pass",
database="loc")
cur = conn.cursor()
cur.execute("SELECT id from ide")
data=cur.fetchall()
pandas=pd.DataFrame(data)
cur.close()
con.close()
Run Code Online (Sandbox Code Playgroud)
所以当我打印“pandas”时,结果是没有标题。那么我怎样才能收到它们呢?
小智 6
我还发现将 as_dict=True 添加到游标对象有效:
cur = conn.cursor(as_dict=True)
Run Code Online (Sandbox Code Playgroud)
然后你可以运行剩下的:
cur.execute("SELECT id from ide")
data=cur.fetchall()
pandas=pd.DataFrame(data)
Run Code Online (Sandbox Code Playgroud)
熊猫将从字典中获取列名
首先建立连接:我看到你用的是MSSQL
import pyodbc
# Parameters
server = 'server_name'
db = 'db_name'
# Create the connection
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=' + server + ';DATABASE=' + db + ';Trusted_Connection=yes')
Run Code Online (Sandbox Code Playgroud)
然后使用熊猫:
df = pandas.read_sql(sql, conn)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5546 次 |
| 最近记录: |