我如何为另一个表中的每个id插入一条记录?

时间:2016-08-19 11:25:17

标签: sql sql-server database

我已经看过插入选择,但我只想从第二个表中获取一个值。这就是我的想法:

insert into table1
Values((select distinct id from table2),
"blah", "blah", "blah")

因此,在Id之后,其余值将被硬编码为我想要的任何内容。这可能吗?

2 个答案:

答案 0 :(得分:4)

正确的语法不使用values

insert into table1(col1, . . . )
    select distinct id, 'blah', 'blah', 'blah'
    from table2;

注意:

  • 使用insert时,您应始终使用显式列列表,除非您确实知道自己在做什么。
  • 使用单引号分隔字符串,而不是双引号。

答案 1 :(得分:0)

语法如下:

insert into table1
select distinct id, 'blah', 'blah', 'blah' from table2

对字符串文字使用单引号,例如'blah'。 (双引号用于分隔标识符,例如,如果对象具有名为"table"的保留字。)