簡體   English   中英

使用python從SQL數據庫中提取唯一值到excel

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM