时间处理函数

因为时间处理问题,导致数据与业务方一直不吻合,找了很久的原因,才发现原来是时间处理上出了问题,因此总结下经验,希望更加细致。

1. sql时间处理函数

(1) to_date() 转化为日期格式
(2) add_months(date,n) 在日期上加几个月
(3) last_day() 求日期所对应的月份的最后一天
(4) SUBSTR(string, start, length) 用于提取一定长度的字符串

2. python时间处理函数

(1) 按字符串拆分
在处理过程中一定要注意到底是拆分出多少字符,拆分完成之后一定要注意检查,比如可能拆分出来是2023-、2023-0等不正确的形式

# create_date:2023-01-01 03:04:44
data['apply_date']=[str(x)[:10] for x in data['create_date']]

(2) 两个日期求间隔天数

  • pd.to_datetime() 转化日期函数
  • 两个date相减,得到一个datetime数据格式,需要使用x.days转化成相差的天数
data['cha']=pd.to_datetime(data['day1'])-pd.to_datetime([str(x)[:10] for x in data['create_date']])
data['cha']=[abs(x.days) for x in data['cha']]

(3) 查看当前时间

  • datetime库
# 用于查看进行某项操作所需要的时间
starttime=datetime.datetime.now()
print('取数开始时间为:',starttime)
...
endtime=datetime.datetime.now()
print('取数结束时间为:',endtime)
  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值