memcache 數據類型?Peewee是一個簡單小巧的Python ORM,它非常容易學習,并且使用起來很直觀,我來為大家講解一下關于memcache 數據類型?跟着小編一起來看一看吧!
Peewee是一個簡單小巧的Python ORM,它非常容易學習,并且使用起來很直觀。
這是官方文檔,中文的:peewee — peewee 3.14.4 文檔
今天重點講一下怎麼删除數據庫重複項的問題。
假如你有一個表格,裡面有一列數據“身份證号”,但是,由于某些原因,有些身份證号是重複的,我們需要删除身份證号重複的、多餘的條目。網上找了很久都沒有結果(官方文檔僅給出了一個使用 .distinct()方法查詢出不同數據的例子)。但是,怎麼實際删除數據庫中的重複行呢?可以這樣操作:
思路:先查詢出身份證号不重複的列,導出這些行的id,到一個ids列表中;然後,把id不在列表中的行删除。
代碼如下:
from peewee import SqliteDatabase
from playhouse.reflection import generate_models
db = SqliteDatabase('d:/biaoge.db')
#自省數據庫并為找到的所有表生成模型類,節省大量定義數據庫的錄入!!!超贊的功能!
models = generate_models(db)
#将模型注入全局命名空間,後面可以直接操作了。已經自動識别出表名是xxb
globals().update(models)
#依身份證号查詢出不重複的行
query =xxb.select().group_by(xxb.身份證号).distinct()
#準備ids列表
ids=[]
#對不重複的行,生成叠代器querys
querys=iter(query)
#将不重複的身份證号放入ids列表中
for qu in querys:
ids.append(qu.id)
#删除不重複的行:對不在ids表中的行,依id删除,秒删!
xxb.delete().where(xxb.id.not_in(ids)).execute()
是不是很簡單!如有疑問,歡迎私信聯系我,手握一大把使用技巧[微笑]。
當然了,也可以将數據庫導出到csv文件,再導入excel表格,進行删除重複項的處理。然後再導入數據庫。但是這種操作太麻煩了,操作時間也比較長。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!