SQL将所有列插入具有第二列常量的表中
我有一个新表,它由两列组成。我试图做的是将另一个表中一列的所有值插入到新表中,但第二列必须是常量 例如:SQL将所有列插入具有第二列常量的表中,sql,Sql,我有一个新表,它由两列组成。我试图做的是将另一个表中一列的所有值插入到新表中,但第二列必须是常量 例如: Table1 ID 1 2 3 4 5 6 我试图将表1中的所有ID插入新表中的COL1,同时使COL2保持常量 如何实现这一点?您可以在SELECT语句中使用常量: INSERT INTO NewTable ( Col1 , Col2 ) SELECT Id AS Col1 , 1 AS Col2 FROM Table1; 或者,如果您希望使用预先指
Table1
ID
1
2
3
4
5
6
我试图将表1中的所有ID插入新表中的COL1,同时使COL2保持常量
如何实现这一点?您可以在SELECT语句中使用常量:
INSERT INTO
NewTable
(
Col1
, Col2
)
SELECT
Id AS Col1
, 1 AS Col2
FROM
Table1;
或者,如果您希望使用预先指定的变量,您可以编写:
DECLARE @Col2Value AS INT;
SET @Col2Value = 1;
INSERT INTO
NewTable
(
Col1
, Col2 )
SELECT
Id AS Col1
, @Col2Value AS Col2
FROM
Table1;
如果希望新表的第二列具有默认值,可以在表声明中定义该值,然后仅插入第一列的值:
CREATE TABLE
(
Col1 INT
, Col2 INT DEFAULT(1)
);
INSERT INTO
NewTable
(
Col1
)
SELECT
Id AS Col1
FROM
Table1;
如果
表2
存在,您可以执行以下操作:
insert into table2 (col1, col2)
select col1, 1
from table1;
如果table2
不存在并且您想要创建它,那么就有相应的语法。最常见的是将表创建为:
create table table2 as
select col1, 1 as col2
from table1;
有些数据库将转换为语法:
select col1, 1 as col2
into table2
from table1;
插入到表2中从表1中选择Col1,1作为col2
尝试此操作将列定义为默认常量。创建表so_56(col1编号,col2编号默认为1);插入so_56(col1)中,从表1中选择id;用你正在使用的数据库标记你的问题。我已经用@JaydipJadhavs solution解决了这个问题,但由于他将其作为评论发布,我不确定如何接受它
select col1, 1 as col2
into table2
from table1;