[英]Extract unique values from an SQL database to excel using python
我是python
新手,正在尝试一个需要我从SQL(.db)
数据库提取数据并将其输出到excel文件的项目。
我的数据库文件有很多数据,但是我设法打印的结构如下
Run ID | Environment
1 52
2 52
3 52
4 52
5 72
6 72
7 72
8 72
....
现在,我需要能够将这些值输出到这样的excel电子表格中,
52 | 72 | 92 | 112 | 132
下面是我当前的代码,它允许我输出
52 | 52 | 52 | 52 | 72 | 72 | 72 | 72
a是来自模块访问数据库的c.fetchall()
可以提供任何帮助
Access_Database_Module.Access_Database(DB)
x = 2
DBcommand = "SELECT * FROM " + a[x][0]
print(a[x][0])
c.execute(DBcommand)
y = c.fetchall()
x = y
workbook = xls.Workbook('Environment.xlsx')
worksheet = workbook.add_worksheet('Environment Direction')
rowNum = 0
colNum = 1
workbook = xls.Workbook('Environment.xlsx')
worksheet = workbook.add_worksheet('Environment Direction')
for item in y:
while colNum == colNum + 1 :
colNum
worksheet.write(rowNum, colNum, item[14])
colNum += 1
workbook.close()
您需要按以下方式更改查询:
DBcommand =“从” + a [x] [0]中选择不同的[环境]
这将返回您正在寻找的唯一值
是否要从数据库列中删除重复项并将其存储在Excel中? 如果是这样,那么下面的代码可能会对您有所帮助。
import pandas as pd
import sqlite3
# get DB connection
con = sqlite3.connect("your DB connection")
# Read sqlite query results into a pandas DataFrame
df = pd.read_sql_query("SELECT * from yourDB", con)
# verify that result of SQL query is stored in the dataframe
print(df.head())
con.close()
# if you want to remove duplicate based on particular column then do this
df.drop_duplicates(subset=[column_name],inplace=True)
# else do this
df.drop_duplicates(inplace=True)
# export to Excel file
df.to_excel("filename.xlsx",index=False)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.