Mysql格式化日期时间
項目中有關時間日期的格式化,不正確的格式化肯呢過導致數據無法插入數據庫。MySQL的格式總結如下有:
格式 描述| %a | 縮寫星期名 |
| %b | 縮寫月名 |
| %c | 月,數值 |
| %D | 帶有英文前綴的月中的天 |
| %d | 月的天,數值(00-31) |
| %e | 月的天,數值(0-31) |
| %f | 微秒 |
| %H | 小時 (00-23) |
| %h | 小時 (01-12) |
| %I | 小時 (01-12) |
| %i | 分鐘,數值(00-59) |
| %j | 年的天 (001-366) |
| %k | 小時 (0-23) |
| %l | 小時 (1-12) |
| %M | 月名 |
| %m | 月,數值(00-12) |
| %p | AM 或 PM |
| %r | 時間,12-小時(hh:mm:ss AM 或 PM) |
| %S | 秒(00-59) |
| %s | 秒(00-59) |
| %T | 時間, 24-小時 (hh:mm:ss) |
| %U | 周 (00-53) 星期日是一周的第一天 |
| %u | 周 (00-53) 星期一是一周的第一天 |
| %V | 周 (01-53) 星期日是一周的第一天,與 %X 使用 |
| %v | 周 (01-53) 星期一是一周的第一天,與 %x 使用 |
| %W | 星期名 |
| %w | 周的天 (0=星期日, 6=星期六) |
| %X | 年,其中的星期日是周的第一天,4 位,與 %V 使用 |
| %x | 年,其中的星期一是周的第一天,4 位,與 %v 使用 |
| %Y | 年,4 位 |
| %y | 年,2 位 |
1.date_format(e.start_time,'%Y-%m-%d %H:%i:%s')
如果把%m改為%c,那么日期的格式就是2012-2-12 00:00:00月是數值,%m是十二月制的。H是24小時制,h是12小時制。
返回結果類似:
[html]?view plaincopy
2.如果參數是類似 1344887103 十位數字,需要返回時間日期,則使用FROM_UNIXTIME( unix_timestamp )?
返回值:有兩種,可能是類似 'YYYY-MM-DD HH:MM:SS' 這樣的字符串,也有可能是類似于 YYYYMMDDHHMMSS.uuuuuu 這樣的數字,具體返回什么取決于該函數被調用的形式。
[html]?view plaincopy3.
參數:date 可能是個 DATE 字符串,DATETIME 字符串,TIMESTAPE 字符串,或者是一個類似于 YYMMDD 或者 YYYYMMDD 的數字串。?
返回:從 UTC 時間'1970-01-01 00:00:00'開始到該參數之間的秒數。服務器將參數 date 解釋成當前時區的壹個值并且將其轉化成 UTC 格式的內部時間。客戶端則可以自行設置當前時區。當 UNIX_TIMESTAMP() 用于壹個 TIMESTAMP 列時,函數直接返回內部時間戳的值;如果你傳遞壹個超出范圍的時間到 UNIX_TIMESTAMP(),它的返回值是零。
[html]?view plaincopy
注意:如果你使用 UNIX_TIMESTAMP() 和 FROM_UNIXTIME() 來轉換 TIMESTAMP 值與 Unix 時間戳的值,精度會丟失,因為這個映射在兩個方向上不是一一對應的。比如說,由于本地時區的更改,有可能兩個 UNIX_TIMESTAMP() 會映射到同壹個 Unix 時間戳的值。 FROM_UNIXTIME() 只會映射到原來的那個時間戳的值上。這里有個例子,在 CET 時區使用 TIMESTAMP:
from:?http://blog.csdn.net/findmyself_for_world/article/details/38082915
總結
以上是生活随笔為你收集整理的Mysql格式化日期时间的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入理解MySQL的外连接、内连接、交叉
- 下一篇: 10 个常见的 Linux 终端仿真器