MySQL中的timestrap是一個常見的數據類型,常用于存儲日期和時間相關的數據,其表示的是從1970年1月1日到當前時間的秒數,也被稱為UNIX時間戳。
使用timestrap可以方便地進行日期和時間的比較、排序和計算。在MySQL中,創建表時可以使用以下語法定義timestrap類型的列:
CREATE TABLE my_table ( id INT NOT NULL PRIMARY KEY, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP );
在上面的示例中,我們創建了一個名為my_table的表,包含三個列,其中id為整型,created_at和updated_at均為timestrap類型。created_at列使用CURRENT_TIMESTAMP作為DEFAULT值,表示在插入數據時將自動填充當前時間;而updated_at列則使用ON UPDATE CURRENT_TIMESTAMP,也就是在更新數據時將自動更新為當前時間。
可以使用如下SQL語句查詢當前時間:
SELECT NOW();
也可以使用UNIX_TIMESTAMP函數將timestrap轉換為UNIX時間戳:
SELECT UNIX_TIMESTAMP(created_at) FROM my_table;
需要注意的是,在進行timestrap類型的計算時,需要將其轉換為秒數進行計算,然后再將結果轉換為timestrap類型,如下所示:
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(created_at) + 86400) FROM my_table;
在上面的示例中,我們將created_at字段加上了一天(即86400秒),并將結果轉換為timestrap類型。