mysql查询将表里的月份数字替换成对应的英文简写月份,将日期数字替换为对应的星期几?

mysql查询将表里的月份数字替换成对应的英文简写月份,将日期数字替换为对应的星期几?,第1张

使用mysql自带函数 FROM_UNIXTIME(时间戳,format) ,根据format字符串格式

例如

1

SELECT FROM_UNIXTIME(1234567890, '%Y-%m-%d %H:%i:%S')

对于你的表 *** 作,转化成 年-月-日 小时-分-秒格式

1

update table1 set addtime = FROM_UNIXTIME(addtime, '%Y-%m-%d %H:%i:%S')

转化成 年-月-日格式

1

update table1 set addtime = FROM_UNIXTIME(addtime, '%Y-%m-%d')

下面是其他格式

%W 星期名字(Sunday……Saturday) %D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。) %Y 年, 数字, 4 位 %y 年, 数字, 2 位 %a 缩写的星期名字(Sun……Sat) %d 月份中的天数, 数字(00……31) %e 月份中的天数, 数字(0……31) %m 月, 数字(01……12) %c 月, 数字(1……12) %b 缩写的月份名字(Jan……Dec) %j 一年中的天数(001……366) %H 小时(00……23) %k 小时(0……23) %h 小时(01……12) %I 小时(01……12) %l 小时(1……12) %i 分钟, 数字(00……59) %r 时间,12 小时(hh:mm:ss [AP]M) %T 时间,24 小时(hh:mm:ss) %S 秒(00……59) %s 秒(00……59) %p AM或PM %w 一个星期中的天数(0=Sunday ……6=Saturday ) %U 星期(0……52), 这里星期天是星期的第一天 %u 星期(0……52), 这里星期一是星期的第一天 %% 一个文字“%”。

0 先理解下格式问题

要理解两种格式,一是mysql内部使用和存储时使用的格式,另一个是用户显示的格式;

存储格式:mysql保存日期时间值时使用的CCYY-MM-DD格式遵循ISO 8601标准;

显示格式:显示在输出界面上的格式,可以使用DATA_FORMAT()或TIME_FORMAT()函数来设置和转换;

1 转换和处理

1)提交数据,一是使用标准格式让其自动识别,二是对输入值进行格式指定和转换

insert into t (d) values('2012-01-01') #使用默认ansi标准格式,让数据库自动识别字串为日期;

insert into t (d) values( STR_TO_DATE('2012/February/01', '%Y/%M/%d') ) #使用字符转换为日期的函数来处理自定义格式的输入值;

2)查询数据,一是不使用格式(即使用默认的CCYY-MM-DD格式),二是指定输出格式

select current_date() #默认格式

select date_format(current_date(), ''%Y/%M/%d'') #使用自定义格式,具体参考下date_format的帮助,主要是格式控制符的使用。

2 格式化参数

DATE_FORMAT(), TIME_FORMAT(), STR_TO_DATE()这三个函数都接受格式化串作为参数来格式化日期时间

常用的格式化字符:

%Y4位数字年份 2012

%y2位数字年份 12

%M完整英文月份名称,January - December

%b月份名称前三个字母,Jan - Dec

%m2位数字月份 01-12

%c最小位数字月份 1-12

%d2位数字日期 01-31

%e最小位数字日期 1-31

%W工作日名称 Sunday - Saturday

%r12小时制时间,以AM或PM结尾

%T24小时制时间

%H24小时制小时 00-23

%i2位数字分钟 00-59

%s2位数字秒数 00-59

%%%文字字符


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8705683.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-20
下一篇2023-04-20

发表评论

登录后才能评论

评论列表(0条)

    保存