2016-11-30 54 views
0

我在我的熊猫数据框中有一个表。时间00:00:00正在存储在我的数据库,同时使用df.to_sql

id count 
1 12 
2 4 
3 7 
4 3 
5 9 

我定义了一个字符串

dateSelect = "'2016-11-20'" 

我想一个新的列到我的DF dates为恒定值我dateSelect

添加,所以我做了df['dates'] = pd.Timestamp(dateSelect)

和我得到结果

id count dates 
1 12 2016-11-20 
2 4 2016-11-20 
3 7 2016-11-20 
4 3 2016-11-20 
5 9 2016-11-20 

(使用

df['dates'] = dateSelect 
df['dates'] = pd.to_datetime(df['dates']) 

也试过)现在,我用sqlalchemy

from sqlalchemy import create_engine 
engine = create_engine('mysql+mysqldb://name:[email protected]/dbname', echo=False) 
df.to_sql(name='date_test', con=engine, if_exists = 'append', index=False) 

在我的数据库中存储这种数据帧时,我从我的数据库查询

select * from date_test; 

我收到以下结果TS。

id count dates 
1 12 2016-11-20 00:00:00 
2 4 2016-11-20 00:00:00 
3 7 2016-11-20 00:00:00 
4 3 2016-11-20 00:00:00 
5 9 2016-11-20 00:00:00 

但我不想要时间来到那里。 是否有任何其他方式来查询我的数据框,以便这些00:00:00不会进入我的数据库。

P.S我不希望让数据库在我的表进行任何更改一旦储存

回答

1

你可以尝试转换日期时间为日期对象,然后写SQL。

dateSelect = '2016-11-20' 
df['dates'] = dateSelect 
df['dates'] = pd.to_datetime(df['dates']).dt.date 

希望这会有所帮助。

相关问题