2つのカラム(user_idとyear)を持つ2つのテーブルがあります。Oracle指定のカラム名
Query1を:
SELECT * FROM table_1 t1
FULL JOIN table_2 t2 ON t1.user_id=t2.user_id AND t1.year=t2.year
生成し、次の列名:
user_id, year, user_id_1, year_1
QUERY2:
QCSJ_C000000000400000, QCSJ_C000000000400002, QCSJ_C000000000400001, QCSJ_C000000000400003
:
CREATE TABLE table_copy AS SELECT * FROM
(SELECT * FROM table_1 t1
FULL JOIN table_2 t2 ON t1.user_id=t2.user_id AND t1.year=t2.year);
は漠然と列名を次生成し
query2
に明示的に書き込むことなくquery1
と同じ名前を使用するように強制する短い方法はありますか(列が多い場合は重要です)。たぶんいくつかのOracleの設定ですか?
常に列を明示する必要があります。そうしないと説得力のある理由はありません。 – skaffman
いずれかのテーブルの* only * 1のuser_idカラムとyearカラムを含むクエリを記述して、余分なデータ(余分なカラムのため)がデスティネーションテーブルに書き込まれるのを避けることができます。 – shahkalpesh
私の意図は、すべての結合を行い、手動で列を複製することを減らすことでした。既存のテーブルに列を追加または削除するときに発生する行の連鎖や他の物理的パラメータにどのように影響するかはわかりませんが – reforrer