2013-01-11 37 views
0

我添加了一個應存儲timestamp值的新列。該值目前存在於另一個表中。所以我試圖建立一個查詢來更新我的新列使用其他表。將int-timestamp轉換爲時間戳(更新行時)

這是我當前的查詢:

UPDATE `gc_users` U 
    SET `registration_date` = (SELECT `joindate` 
            FROM `vb_user` 
            WHERE `username` = U.`name` 
            LIMIT 0,1 
           ) 

的問題是,更新registration_date後的值是0000-00-00 00:00:00

新表:gc_users

  • 柱:REGISTRATION_DATE(時間戳)
  • 例如:2013-01-11 15:24:04

源表:va_user

  • 柱:joindate(INT)
  • 實施例:1354290120

回答

2

使用FROM_UNIXTIME

UPDATE `gc_users` U 
     INNER JOIN `vb_user` a 
      ON a.`username` = U.`name` 
SET  u.`registration_date` = FROM_UNIXTIME(a.`joindate`) 
LIMIT 0,1 
+0

非常感謝您爲! –

+0

不客氣':D' –