时间:2016.04.18 发布人:**mberfree
已解决问题
谷歌**mberfree用户在2016.04.18提交了关于“
秘密花园MySQL存储毫秒**的方法”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-10-23T11:52:02。希望大家能够帮助她。
详细问题描述及疑问:期待您的答案,我不知道说什么才好,除了谢谢
!
希望以下的回答,能够帮助你。
第1个回答
用户名:super**e
有相祷部分刚接触到M问答ySQL的朋友都遇到这样一个相同的问题,就守于扬行却配诗族司理难毫秒的存储与显示。由于MySQL**类型中只提供了DATETIME,TIMESTAMP,TIME,DATE,YEAR这几种时间类型,而且D既讨探调被状育吧ATETIME以及TIMEST创板体盐高注队AMP的最小单位是秒,没有存储毫秒级别的函数。不过MySQL却能识别时间中的毫秒部分。而且我们有多种方式可以获得毫秒的部分,比如函数:microsecond等。
我这里举一个简单的例子,来存储甲罪度受罗胶远领括秒之前和之后的部分。
对于把时间字段作为主键的应用,我们可以建立以下的表练留乡来作相应的转化:
mysql>createtablemysql_microsecond(log_time_pr
efixtimestampnot**lldefault0,log_time_suffixmediumintnot**lldefault0)engineinnnodb;QueryOK,0rowsaffected,2warnings(0.00sec)mysql>altertablemysql_microsecondaddprimarykey(log_time_pre几或建庆担导四夜威fix,log_time_suffix);QueryOK,0ro于几改波之流故方之伟支wsaffected(0.01品帮脚sec)Records:0Duplicates:0Warnings:0mysql>set@a=convert(concat(now(),'.222009'),datetime);QueryOK,0rowsaffected(0.00sec)mysql>i并弦春数即较设侵米纪nsertintomysql刑看个难序口全盾学革_microsecondselectdate_format(@a,'%Y-%m-%d%h**-%i-%s'),date_format(@a,'%f');吗切李推文领讨吃QueryOK,1rowaffected(0.00sec)Records:1Duplicates:0Warnings:0mysql>select*frommysql_microseco振常电境统事nd;+---------------------+-----------------+|log_time_prefix|log_time_suffix|+-----------------氢促香官----+-----京钱义除------------+|2009-08-1117:47:02|222009|+--------------义笑-------+-----------------找伯止纪卷根独直留独护+1rowinset(0.00sec)
或者是用VARCh**AR来存储所有的时间字段,又或者是存储一个h**ASh**来保性能!
方法很多,就看你的应用怎么用合理了。