strftime()函数的用法
strftime()函数可以把YYYY-MM-DD HH:MM:SS格式的日期字符串转换成其它形式的字符串。
strftime()的语法是strftime(格式, 日期/时间, 修正符, 修正符, ...)
它可以用以下的符号对日期和时间进行格式化:
- %a - 简写的星期几
- %A - 完整的星期几
- %b - 缩写的月份名称
- %B - 完整的月份名称
- %c - 首选日期和时间表示
- %C - 世纪值(年份除以100,范围从00到99)
- %d - 该月的第几天(01?31)
- %D - 类似 %m/%d/%y
- %e - 该月的一天(1?31)
- %g - 类似于%G,但是没有世纪
- %G - 对应于ISO周数4位数的年份(参见%V)
- %h - 类似于 %b
- %H - 小时,使用24小时制(00?23)
- %I - 小时,使用12小时制(01?12)
- %j - 一年中的哪一天(001?366)
- %m - 月份(01?12)
- %M - 分钟
- %n - 换行符
- %p - 根据给定的时间值am或pm
- %r - 时间在上午和下午的符号:am/pm
- %R - time in 24 hour notation
- %S - 秒
- %t - 制表符
- %T - 当前时间,等于 %H:%M:%S
- %u - 工作日为数字(1到7),星期一= 1。警告:在Sun Solaris上周日=1
- %U - 当年的周数,第一个星期日作为第一周的第一天
- %V - 本年度ISO 8601的周数(01到53),其中,第1周是在本年度至少4天的第一个星期,星期一作为一周的第一天
- %W - 当年的周数,与第一个星期一作为第一周的第一天
- %w - 星期为一个小数,星期日=0
- %x - 没有时间的日期表示
- %X - 无日期首选的时间表示
- %y - 一年无世纪(范围从00到99)
- %Y - 今年,包括世纪
- %Z or %z - 时区或名称或缩写
- %% -文字%字符
strftime()的用法举例如下:
select strftime('%Y.%m.%d %H:%M:%S','now','localtime');
结果:2006.10.17 21:41:09
其实更好的用法是这样的,比如统,本月或本年的支出:
select strftime('%Y-%m',日期) as 月份,sum(支出) as 月支出 from 流水帐 group by 月份;