MySQL 5.7版本及以上支持存儲JSON格式數據,但在查詢JSON格式數據時,有時需要將JSON格式化的時間轉換為時間戳或指定格式的時間字符串。
對于MySQL中保存的JSON格式時間,可以使用DATE_FORMAT函數將其格式化為指定的時間字符串:
SELECT DATE_FORMAT(JSON_EXTRACT(column_name, '$.time'), '%Y-%m-%d %H:%i:%s') AS time_str FROM table_name;
其中,column_name
為包含JSON形式時間的列名,$
表示JSON根節點,time
為JSON中時間對應的key,%Y-%m-%d %H:%i:%s
為指定的時間格式。
如果需要將JSON格式化的時間轉換為時間戳,可以使用UNIX_TIMESTAMP函數:
SELECT UNIX_TIMESTAMP(JSON_EXTRACT(column_name, '$.time')) AS timestamp FROM table_name;
其中,column_name
為包含JSON形式時間的列名,$
表示JSON根節點,time
為JSON中時間對應的key。
需要注意的是,MySQL中JSON類型的數據查詢時,需要使用JSON_EXTRACT函數提取數據。在寫查詢語句時,建議使用預編譯語句,避免SQL注入等安全問題。
總之,在使用MySQL存儲JSON格式時間時,可以通過以上方法方便地進行格式轉換,以滿足業務需求。
下一篇css3轉圈等待