Golang - 获取当月第一天的时间和最后一天的时间
简介
在数据库查询的时候,经常需要获取当月的第一天或者最后一天来查询当月数据,进行统计。
在 Golang 中,可以直接使用time这个包进行时间处理,只要通过预算就可以获取当前月的第一天和最后一天。
代码
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
firstDateTime := now.AddDate(0, 0, -now.Day()+1)
firstDateZeroTime := time.Date(firstDateTime.Year(), firstDateTime.Month(), firstDateTime.Day(), 0, 0, 0, 0, firstDateTime.Location())
fmt.Println("当前时间:", now)
fmt.Println("第一天的时间:", firstDateTime)
fmt.Println("第一天0点的时间:", firstDateZeroTime)
fmt.Println("======================================")
lastDateTime := now.AddDate(0, 1, -now.Day())
lastDateZeroTime := time.Date(lastDateTime.Year(), lastDateTime.Month(), lastDateTime.Day(), 0, 0, 0, 0, firstDateTime.Location())
fmt.Println("当前时间:", now)
fmt.Println("最后一天的时间:", lastDateTime)
fmt.Println("最后一天0点的时间:", lastDateZeroTime)
fmt.Println("======================================")
}
总结
时间运算,在编程过程中也是经常遇到的。
- 原文作者:Linux运维菜
- 原文链接:https://www.opcai.top/post/2020/2020-07/golang_month_time/
- 版权声明:本作品采用进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。