sqlalchemy日期功能缺失

时间:2015-12-23 19:07:17

标签: python sqlite sqlalchemy

我正在使用sqlalchemy和sqlite和python。

dataset.to_sql('data', disk_engine, if_exists='replace')
def query(string):
    return pd.read_sql_query(string, disk_engine)

数据集是从csv文件加载的pandas数据帧。

 date = "select SUBSTR(Date,1) from data LIMIT 1"
 print query(date)

                SUBSTR(Date,1)
0  2014-08-08 00:00:00.000000

所以SUBSTR()方法确实有效,但是当我尝试这个时:

date = "select YEAR(Date) from data LIMIT 1"
print query(date)

OperationalError: (sqlite3.OperationalError) no such function: YEAR [SQL: 'select YEAR(Date) from data LIMIT 1']

我收到此错误。

我没有导入SUBSTR所以为什么SUBSTR()方法被识别而不是任何Date函数?

1 个答案:

答案 0 :(得分:1)

我不相信Year()是sqlite中的函数。

您应该使用strftime

select strftime('%Y',date) from data limit 1

这样的东西

strftime上的W3资源。 http://www.w3resource.com/sqlite/sqlite-strftime.php