我有一个表,Table1,有 7 列。让我们将它们命名为 C1 到 C7。
列 C3-C6 允许 NULL 值。
如何将 SQL 插入语句写入 Table1,该语句将从不同的表(ReferenceTable)中获取 C1 和 C2 的值,同时将 C7 设置为值 0?
现在,我有以下几点:
INSERT INTO Table1 (C1, C2)
SELECT @C1, C2
FROM ReferenceTable
这几乎完成了我需要的一切,除了用值 0 初始化 C7。我将如何做?
最佳答案
您可以将 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 中)看到这一点,当您修改表时,您要查找的字段是默认值或绑定(bind)
关于使用选择的 SQL 插入语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24939506/