添加默认值为 0.0 的列
Add column with default value 0.0
我在 sql 服务器中有一个 table,但我想添加一个全为零的额外列
我这样做:
DECLARE @var numeric(10,1) set @var = 0.0
SELECT tmp.a,
tmp.b,
@var
INTO #tmp2
from #tmp1 as tmp
当我 select * from #tmp2
列得到 0 但我想要 0.0
您需要为列命名,这将按预期工作,将 C 列的值保留为 0.0:
CREATE TABLE #temp1(a int, b int)
INSERT #temp1 values(1,1),(2,2)
DECLARE @var numeric(10,1) set @var = 0.0
SELECT a,
b,
@var c
INTO #tmp2
FROM #temp1
SELECT * from #tmp2
结果:
a b c
1 1 0.0
2 2 0.0
首先你的SQL不正确你需要在SELECT列表中给@var一个列名。其次,我无法重现这个问题。我正在使用 SQL Server 2014,它是来自 #tmp2 的 returns 0.0 而不是 0.
我在 sql 服务器中有一个 table,但我想添加一个全为零的额外列 我这样做:
DECLARE @var numeric(10,1) set @var = 0.0
SELECT tmp.a,
tmp.b,
@var
INTO #tmp2
from #tmp1 as tmp
当我 select * from #tmp2
列得到 0 但我想要 0.0
您需要为列命名,这将按预期工作,将 C 列的值保留为 0.0:
CREATE TABLE #temp1(a int, b int)
INSERT #temp1 values(1,1),(2,2)
DECLARE @var numeric(10,1) set @var = 0.0
SELECT a,
b,
@var c
INTO #tmp2
FROM #temp1
SELECT * from #tmp2
结果:
a b c
1 1 0.0
2 2 0.0
首先你的SQL不正确你需要在SELECT列表中给@var一个列名。其次,我无法重现这个问题。我正在使用 SQL Server 2014,它是来自 #tmp2 的 returns 0.0 而不是 0.