中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

mysql之TIMESTAMP(時間戳)用法詳解

小云
126
2023-08-08 13:07:21
欄目: 云計算

TIMESTAMP是MySQL中用來存儲和操作日期和時間的數據類型之一。它可以存儲從1970年1月1日00:00:00到2038年1月19日03:14:07之間的時間戳。

在MySQL中,TIMESTAMP數據類型有以下特點和用法:

  1. 存儲范圍:TIMESTAMP類型存儲的時間范圍是從1970年1月1日00:00:00到2038年1月19日03:14:07之間的時間戳。它占據4個字節的存儲空間。

  2. 自動更新:可以設置TIMESTAMP列在插入或更新行時自動更新為當前時間,使用DEFAULT CURRENT_TIMESTAMP或ON UPDATE CURRENT_TIMESTAMP。

例如,創建一個表時可以設置一個TIMESTAMP列自動更新為當前時間:

CREATE TABLE example (
id INT PRIMARY KEY,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

當插入一條新的記錄時,created_at列將自動設置為當前時間。

  1. 時區:TIMESTAMP列的值存儲為UTC時間,但在檢索時會根據當前會話的時區進行轉換。

可以使用CONVERT_TZ函數將UTC時間轉換為特定時區的時間,例如:

SELECT CONVERT_TZ(created_at, 'UTC', 'Asia/Shanghai') AS local_time
FROM example;

這將返回將created_at列從UTC時間轉換為Asia/Shanghai時區的本地時間。

  1. 時間戳函數:MySQL提供了一些用于操作TIMESTAMP類型的內置函數,例如NOW()、CURRENT_TIMESTAMP()和UNIX_TIMESTAMP()。
  • NOW()函數返回當前的日期和時間。

  • CURRENT_TIMESTAMP()函數返回當前的日期和時間,與NOW()函數功能相同。

  • UNIX_TIMESTAMP()函數返回當前的Unix時間戳(從1970年1月1日00:00:00開始的秒數)。

例如,可以使用NOW()函數在INSERT語句中插入當前時間:

INSERT INTO example (id, created_at)
VALUES (1, NOW());
  1. 時間戳格式化:可以使用DATE_FORMAT函數將TIMESTAMP值格式化為特定的日期和時間格式。
SELECT DATE_FORMAT(created_at, '%Y-%m-%d %H:%i:%s') AS formatted_time
FROM example;

這將返回將created_at列格式化為YYYY-MM-DD HH:MM:SS格式的時間。

總結:TIMESTAMP是MySQL中用于存儲和操作日期和時間的數據類型。它可以自動更新為當前時間,并且可以使用內置函數進行操作和格式化。在檢索時會根據當前會話的時區進行轉換。

0
邢台市| 南澳县| 定襄县| 巴林右旗| 涞水县| 肇东市| 精河县| 九寨沟县| 繁昌县| 定边县| 黑龙江省| 红河县| 油尖旺区| 肇州县| 苏州市| 海阳市| 金沙县| 丽江市| 康定县| 盐津县| 桂阳县| 汕尾市| 巴东县| 秭归县| 赣州市| 白山市| 温泉县| 汶川县| 玉环县| 双城市| 五指山市| 独山县| 修武县| 义马市| 盖州市| 乡城县| 蛟河市| 乐业县| 涞水县| 扬州市| 饶平县|