0

すべてのフィールドを一時テーブルから別のテーブルに移動したいのですが、ステートメントが機能していないようです。挿入ステートメントで使用する一時テーブルを生成した後、いくつかのフィールドを選択するにはどうすればよいですか?

これは、一時テーブルを生成する私のコードです。動作します:

> CREATE TEMPORARY TABLE table2 AS(SELECT ca.catref AS cx_ref, c.name AS code_name, ca.title, ca.keywords, ca.cat1, ca.cat2, ca.cat3, ca.active, ca.moderated,
FROM table ca
JOIN anothertable c ON c.prefix = LEFT( ca.catref, 3 ))   

これは私がすぐに呼び出す私のコードです。一時テーブルを参照していますが、機能していないようです...

> INSERT INTO mytable (catref, cartoonist, title, keywords, cat1, cat2, cat3, active, moderated, source_db)
SELECT catref, code_name, title, keywords, cat1, cat2, cat3, active, moderated, source_db from table2
4

1 に答える 1

1

最初のクエリ(一時的な作成)でエラーが発生した後ca.moderate、カンマを削除します... ca.moderated,

CREATE TEMPORARY TABLE table2 AS(
SELECT ca.catref AS cx_ref, c.name AS code_name, 
ca.title, ca.keywords, ca.cat1, ca.cat2, ca.cat3,
ca.active, ca.moderated
FROM table ca
JOIN anothertable c ON c.prefix = LEFT( ca.catref, 3 )) 

挿入するには、これを試してください:

INSERT INTO `mytable` 
(catref, cartoonist, title, keywords, cat1, cat2, cat3, active, moderated, source_db) 
SELECT * 
from `table2` 
于 2013-02-26T18:33:30.757 に答える