選択クエリから取得した事前設定値と値を挿入する方法はありますか? 例えば:
INSERT INTO table1 VALUES ("A string", 5, [int]).
「文字列」と数字の 5 の値がありますが、次のような選択から [int] 値を見つける必要があります。
SELECT idTable2
FROM table2
WHERE ...
これにより、table1 に入れる ID が得られます。
これを1つのステートメントにマージする方法は?
insert ... select
クエリを使用して、既知の値を に入れselect
ます。
insert into table1
select 'A string', 5, idTable2
from table2
where ...
次のようなサブクエリを使用するだけです。
INSERT INTO table1 VALUES ("A string", 5, (SELECT ...)).
INSERT INTO table_name1 (ID、 名前、 住所、 contact_number) ID、名前、住所、contact_number FROM table_name2; を選択します。
これを試して
INSERT INTO TABLE1 (COL1 , COL2,COL3) values
('A STRING' , 5 , (select idTable2 from Table2) )
where ...
他のすべての回答は問題を解決し、私の回答は他の回答と同じように機能しますが、より教訓的な方法で機能します(これはMySQLで機能します...他のSQLサーバーを知りません):
INSERT INTO table1 SET
stringColumn = 'A String',
numericColumn = 5,
selectColumn = (SELECT idTable2 FROM table2 WHERE ...);
MySQLのドキュメントを参照できます:INSERT構文
INSERT INTO table1
SELECT "A string", 5, idTable2
FROM table2
WHERE ...
参照: http://dev.mysql.com/doc/refman/5.6/en/insert-select.html
INSERT INTO table1 (col1, col2)
SELECT "a string", 5, TheNameOfTheFieldInTable2
FROM table2 where ...
次のことを試してください。
INSERT INTO table1
SELECT 'A string', 5, idTable2 idTable2 FROM table2 WHERE ...
これを試して:
INSERT INTO table1 SELECT "A string", 5, idTable2 FROM table2 WHERE ...