別のテーブルの値を持つテーブルにINSERT INTOを挿入できますか?

StackOverflow https://stackoverflow.com/questions/634831

  •  10-07-2019
  •  | 
  •  

質問

だから私は…と言います

tableAに挿入し、tableBから2つの変数を挿入しますが、tableBにある行のうち、特定のものに等しい変数が1つある行のみ...

うーん、もっと具体的にできるかどうか見てみましょう...

iは、courseBが11であるtableBのすべての行に対して、tableBのuseridとcourseidを使用してtableAに新しい行を作成します

アドバイスしてください

役に立ちましたか?

解決

INSERT
INTO    tableA (col1, col2)
SELECT  userid, courseid
FROM    tableB
WHERE   courseid = 11

他のヒント

tableAにどの列があるかわからない場合は、次のように言います。

insert into tableA
select 
    userid,
    courseid 
from tableB where 
courseid=11
INSERT INTO TableA (userid, courseid)

SELECT userid, courseid FROM TableB
WHERE courseid = 11

それはあなたのためにそれを行う必要があります。

使用しているデータベースについては言及していませんでした。

MS Accessは、私にとって、このようなことをしようとすると非常にバグが多いことがわかっています。

既存のデータを使用して新しいテーブルを作成する場合は、 SELECT INTO を使用できます。 :

SELECT <columns here> INTO tableA FROM tableB WHERE <restrictions here>

既存のデータを既存のテーブルに挿入する場合は、次を使用する必要があります。

INSERT INTO tableA (<destination columns>) SELECT <source columns> FROM tableB WHERE <restrictions here> 

他の回答で説明されているとおり

tableA(column1、column2、column3)への挿入 テーブルBからcolumn1、column2、column3を選択します

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top