簡體   English   中英

sqlite3獲取日和周python的數量

[英]sqlite3 get number of day and week python

我想獲取星期幾(將星期三設置為一周的第一天)。我使用sqlite3創建數據庫。

示例數據庫Order

 name time A0001 10/1/16 A0002 10/2/16 A0003 10/5/16 A0004 10/16/16 A0005 10/8/16 A0006 10/17/16 A0007 10/23/16 

 import sqlite3 import pandas as pd %sql sqlite:// select name, strftime('%w',time) as weekday,strftime('%W',time) as weeknumber from Order 

似乎strftime無效,所有weekdayweeknumber返回None

我以前也有這個問題。 這是因為DBMS無法識別此日期字符串格式。 我通過使用以下一種sqlite日期格式解決了此問題: https : //www.sqlite.org/lang_datefunc.html

如果表中有很多記錄,則可以編寫一個腳本來重新格式化所有記錄。 否則,您可以再次填寫表格。

您可以使用dateutil解析器將文本文件中的日期轉換為標准格式。

>>> from dateutil.parser import *
>>> for line in open('rya.txt'):
...     line = line.strip()
...     
...     item = line.split()
...     print(item[0], str(parse(item[1])).split()[0])
...     
A0001 2016-10-01
A0002 2016-10-02
A0003 2016-10-05
A0004 2016-10-16
A0005 2016-10-08
A0006 2016-10-17
A0007 2016-10-23

完成此操作后,您可以使用datetime來獲取每個日期的星期幾和星期幾。

或者,您可以使用Python函數將類似的邏輯應用於數據庫表本身。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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