我最近在回答有关SQL格式的问题,并注意到in documentation two ways to define seconds %s
和%S
他们似乎都描述了相同:
%S - Seconds (00..59)
%s - Seconds (00..59)
和
SELECT STR_TO_DATE('2014-07-09 23:30:00', '%Y-%m-%d %H:%i:%s');
SELECT STR_TO_DATE('2014-07-09 23:30:00', '%Y-%m-%d %H:%i:%S');
给出相同的结果。
所以它是否像某些早期版本的剩菜一样具有历史意义,或者它们在某种程度上是两种不同的东西?
答案 0 :(得分:1)
他们是一样的东西。我认为这是历史性的剩余。因为它们都产生相同的结果。
我认为Mark在同一链接中给出的布局很有帮助:
+--------------+----------+--------------------+
| metric | variant | result |
+--------------+----------+--------------------+
| microseconds | %f | 000000..999999 |
| seconds | %s or %S | 00..59 |
| minutes | %i | 00..59 |
| hours | %H | 00...23 |
| | %h or %I | 00...12 |
| | %k | 0...23 |
| | %l | 1...12 |
| day | %a | Sun...Sat |
| | %D | 1st, 2nd, 3rd |
| | %d | 0.31 |
| | %e | 0..31 |
| | %j | 001...366 |
| | %W | Sunday...Sat |
| | %w | 0...6 |
| week | %U | 00...53 per Sun |
| | %u | 00...53 per Mon |
| * | %V | 01...53 per Sun |
| * | %v | 01...53 per Mon |
| month | %b | Jan...Dec |
| | %c | 0...12 |
| | %M | January...December |
| | %m | 00...12 |
| year | %Y | 1999 |
| | %y | 99 |
| * | %X | 1999 |
| * | %x | 99 |
| time | %r | 01:31:12 pm |
| | | %T | 01:31:12 pm |
| | %p | AM or PM |
| Percent sign | %% | % |
+--------------+----------+--------------------+