以下のテーブルが二つあります。
SELECT INSEERTを使用して、元のテーブルに他のテーブルのデータを追加したいのですが、
下記条件の際の記述方法がわかりません。
どうぞよろしくお願いいたします。
DBはMYSQLです。
・元のテーブルT_1が15列(列名は仮にA~Oとする)
・追加したいテーブルT_2は2列(列名はP,Qとする)
・元になるテーブル「T_1」→現在空のテーブル。数列にNOT NULL制約がかかっている。
・追加したいデータの入ったテーブル「T_2」→列P、Qそれぞれ全てに値が入っており、数は一万件。
■実現したい結果→元になるテーブル「T_1」の、A,B列に、
■追加したいデータの入ったテーブル「T_2」のP,Q列を追加して、T_1テーブルを完成させたい。
↓単純に下記SQL文を書いても、NOT NULL制約により、
他の列の値がDEFAULTで無いと怒られエラーになります(当たり前ですが)。
insert into T_1(A,B) select P,Q from test.T_2
↓元になるテーブル「T_1」のinsert文として、
insert into tana_mddb.mgoods( C, D,… O) values( name, hoge,… foo)
も作ってみて、Google検索では「サブクエリ insert文」など検索して試行錯誤したのですが、
**SQL初心者の為、これ以上記述方法が分からなくて手詰まりです。
**
有職者の皆様、どうぞ本件についての正しい記述法をご教示いただけないでしょうか。
よろしくお願いいたします。

回答6件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/13 03:49