2017-02-23 6 views
1

私は2つのテーブルtab1とtab2を持っています。MySQL:テーブルを別のテーブルにコピーする

tab2にはtab1のすべての列がありますが、タイムスタンプ用の列があります。私がしたいのは、すべての行をtab1からtab2にコピーし、挿入するすべての行に対してtimestamp列と同じ時間を入力することです。私は時間を取得して入力することはできますが、データをコピーして挿入する方法と、挿入したすべての行のタイムスタンプを最後の列に入力する方法が混乱しています。

だから私がやりたい:

Insert into tab2 select * from tab1 

が、私はまた、私はこれを行うことができますどのように、TAB2におけるその最後の列のデータを追加したいですか?

答えて

1

両方のテーブルの列のリストがマッチするように、あなたが選択リストにタイムスタンプを追加することができます。

INSERT INTO tab2 
SELECT *, CURRENT_TIMESTAMP() 
FROM tab1 

EDIT
コメントで質問に答えるために - あなたが使用する必要はありませんがCURRENT_TIMESTAMP()。タイムスタンプを返す式があればよい。

INSERT INTO tab2 
SELECT *, TIMESTAMP('2017-07-07 19:43:00') 
FROM tab1 
+0

素晴らしいアイデアですが、現在の時間をフェッチして使用する必要はありません。私が静的な価値を入れたいのであれば、どうすればいいのですか?私は "CURRENT_TIMESTAMP()"を "2017-07-07 19:43:00"のように置き換えることができますか? –

+0

私はINSERT INTO tab1 SELECT *、'07/07/07 19:43:00 'FROM tab1に定住しました。ありがとう –

関連する問題