0

所以..我想要一个查询,用一个查询创建多行。说我想要这样的东西

Row 1: col1 = 'val1', col2 = 'val2', col3 = 'val3'
Row 2: col1 = 'val1', col2 = 'val2', col3 = 'val4'
Row 2: col1 = 'val1', col2 = 'val2', col3 = 'val5'

在哪里

val3,val4,val5

由子查询返回。我在想类似的东西

insert into  table_name (col1, col2, col3) values ('val1', val2, (select column_name from table_two where condition));

有什么想法可以通过一个查询来做到这一点吗?

4

5 回答 5

1

是的,有可能:如果你的val1andval2是不变的,那么:

insert into table_name (col1, col2, col3) select 'val1', 'val2', column_name from table_two where condition;
于 2013-08-28T11:51:47.247 回答
1

试试这个:

INSERT INTO table_name 
    (col1, col2, col3) 
SELECT
    'val1', 'val2', column_name 
FROM table_two 
WHERE condition;
于 2013-08-28T11:52:32.283 回答
1

像这样的东西怎么样

insert into  table_name (col1, col2, col3)
SELECT 'val1','val2',column_name 
from table_two 
where condition

看看SQL INSERT INTO SELECT 语句

于 2013-08-28T11:52:52.207 回答
1

你很亲密。但是,不要使用关键字值,而是选择常量。像这样的东西。

insert into table2
(field1, field2, field3)
select 'fred', 'barney', SomeField
from table1
where whatever.
于 2013-08-28T11:53:18.243 回答
0

使用- 在此处INSERT FROM查看此链接

于 2013-08-28T11:53:44.023 回答