teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

DROP TABLEが抜けてました。

2016/02/10 02:59

投稿

退会済みユーザー
answer CHANGED
@@ -3,16 +3,17 @@
3
3
  時刻テーブルを作成してからUPDATE/INSERTを行ったらいかがでしょうか。
4
4
 
5
5
  【例】
6
- CREATE TABLE TableB ( seconds 型 );
6
+ CREATE TABLE "TableB" ( "seconds" 型 );
7
- INSERT INTO TableB ( seconds ) VALUES ( extract(epoch from now()) );
7
+ INSERT INTO "TableB" ( "seconds" ) VALUES ( extract(epoch from now()) );
8
- UPDATE "TableA" SET "unixtime" = (SELECT seconds FROM TableB ) WHERE "id" = 100;
8
+ UPDATE "TableA" SET "unixtime" = ( SELECT "seconds" FROM "TableB" ) WHERE "id" = 100;
9
- UPDATE "TableA" SET "unixtime" = (SELECT seconds FROM TableB ) WHERE "id" = 199;
9
+ UPDATE "TableA" SET "unixtime" = ( SELECT "seconds" FROM "TableB" ) WHERE "id" = 199;
10
- UPDATE "TableA" SET "unixtime" = (SELECT seconds FROM TableB ) WHERE "id" = 300;
10
+ UPDATE "TableA" SET "unixtime" = ( SELECT "seconds" FROM "TableB" ) WHERE "id" = 300;
11
- UPDATE "TableA" SET "unixtime" = (SELECT seconds FROM TableB ) WHERE "id" = 301;
11
+ UPDATE "TableA" SET "unixtime" = ( SELECT "seconds" FROM "TableB" ) WHERE "id" = 301;
12
- UPDATE "TableA" SET "unixtime" = (SELECT seconds FROM TableB ) WHERE "id" = 310;
12
+ UPDATE "TableA" SET "unixtime" = ( SELECT "seconds" FROM "TableB" ) WHERE "id" = 310;
13
- INSERT INTO "TableA" ("unixtime") SELECT seconds FROM TableB;
13
+ INSERT INTO "TableA" ("unixtime") SELECT "seconds" FROM "TableB";
14
- INSERT INTO "TableA" ("unixtime") SELECT seconds FROM TableB;
14
+ INSERT INTO "TableA" ("unixtime") SELECT "seconds" FROM "TableB";
15
- INSERT INTO "TableA" ("unixtime") SELECT seconds FROM TableB;
15
+ INSERT INTO "TableA" ("unixtime") SELECT "seconds" FROM "TableB";
16
+ DROP TABLE "TableB";
16
17
 
17
18
  ごめんなさい、今手元に環境が無くて、
18
19
  想像で回答させて頂いておりますので、微調整が必要かもしれません。