MySQL中TIMESTAMP類型的使用說明

來源:互聯網
上載者:User

今天使用了一下Mysql中的TIMESTAMP類型,以往儲存時間都是使用整型的UNIX時間戳記,而今天的表結構發生了變化,下面分享一下TIMESTAMP類型的基本使用方法。

 

欄位:updatetime

類型:TIMESTAMP

長度:空

預設:CURRENT_TIMESTAMP

屬性:on update CURRENT_TIMESTAMP

 

 

插入和更新時,不必填寫該欄位,因為屬性為on update CURRENT_TIMESTAMP,MYSQL將在插入/更新時自動用目前時間進行填充,

資料格式如下:

2010-08-23 15:14:30

 

 

下面又要討論如何匯入資料了,將int(11)類型轉換成TIMESTAMP類型,使用下面的SQL語句即可:

 

insert into target
(`Name`,`updatetime`)
select `Name`,date_add('1970-01-01 00:00:00', INTERVAL `timeline` SECOND) from A
;

 

上面這行SQL語句的作用是將源表A中的資料匯入到target表,

注意了,int轉TIMESTAMP類型使用了這個函數:

date_add('1970-01-01 00:00:00', INTERVAL `timeline` SECOND)

 

我們來看一下函數定義:

DATE_ADD(date,INTERVAL expr type) 函數向日期添加指定的時間間隔。

date
參數是合法的日期運算式。expr
參數是您希望添加的時間間隔。

本例中我們從UNIX紀元'1970-01-01 00:00:00'開始,計算到`timeline`為止的時間間隔(用秒SECOND為單位)。

`timeline`是源表A中的原始欄位,int類型,表示寫入記錄的時間。

`updatetime`是目標表target中對應的時間欄位,TIMESTAMP類型。

 

匯入後的資料格式如下:

2010-06-30 09:07:12

 

 

好了。關於匯入資料的技巧,請參見上次我寫的文章:完整匯入資料表時忽略主鍵的方法

http://blog.csdn.net/ciray/archive/2010/08/21/5828988.aspx

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.