QA@IT
この質問・回答は、@ITの旧掲示板からインポートされたものです。

サブクエリを使用したinsert into selectについて

サブクエリを使用したinsert into selectについて教えてください。
調べた限りでは、select してきたカラム個数とinsert するカラム数を同じにする
必要があるようです。
しかし、あるテーブルからselect した値と、任意の値を
同時にinsertするする事はできますでしょうか?
(Access2003)

以下のようなテーブルがあった時に

テーブルA
カラム1
カラム2
カラム3
カラム4

insert into テーブルA(カラム1,カラム2,カラム3)
select テーブルA カラム1,カラム2,カラム3
wehere カラム1 = '1';

あまり、意味のないことをしていますが、上記のようなSQLは実行可能です。

この時に、例えばカラム1,カラム2,カラム3はテーブルAの内容を、
カラム4には「X」という文字をセットしたい場合、
1つのSQLで実行する事は可能でしょうか?

ヒントなどいただけたらと思います。よろしくお願いします。

質問者:YURI

回答

こんにちは、でっちです。

固定文字をSelectすれば良いのでは?
insert into テーブルA(カラム1,カラム2,カラム3,カラム4)
select カラム1,カラム2,カラム3,'X' AS カラム4 FROM テーブルA
wehere カラム1 = '1';

こういうことですかね
[ メッセージ編集済み 編集者: でっち6号 編集日時 2005-12-13 20:03 ]

投稿者:でっち6号

編集 履歴 (0)

でっち6号様
ありがとうございます。
固定文字をSelectできるとは思ってもいませんでした。
解決いたしました。 m(")m

投稿者:YURI

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。