我有一个表,Table1,有7列。让我们将它们命名为C1至C7。
列C3-C6允许NULL值。
如何在Table1中编写一个SQL插入语句,它将从另一个表(ReferenceTable)中获取C1和C2的值,同时将C7设置为值0?
现在,我有以下内容:
INSERT INTO Table1 (C1, C2)
SELECT @C1, C2
FROM ReferenceTable
除了用值0初始化C7之外,这几乎可以完成我需要的所有内容。我将如何进行此操作?
答案 0 :(得分:4)
使用此插入查询:
insert into table1 (c1,c2,c7) (select c1,c2,0 from reftable)
答案 1 :(得分:3)
您可以将0附加到SELECT
...
INSERT INTO Table1 (C1, C2, C7)
SELECT C1, C2, 0
FROM ReferenceTable
或者,您可以将C7
设置为默认值为0,这将是我的首选选项。
ALTER TABLE Table1
ALTER COLUMN C7 SET DEFAULT (0)
因此,如果没有插入任何内容,C7
将始终为0.
您将在设计器中(在Management Studio中)看到这一点,当您修改表格时,您要查找的字段是默认值或绑定