使用具有所需数据类型的 SELECT INTO 创建 #temp

LON*_*ONG 3 t-sql sql-server

对于这个简单的语句:

Select NULL as Col INTO #temp

NULL 列的默认数据类型是int,如果我想避免#提前创建表而不使用表变量,有没有办法像varcharusingSELECT INTO子句一样默认 NULL 列?

谢谢

Mar*_*ith 5

CAST这样。

Select CAST(NULL AS VARCHAR(30)) as Col 
INTO #temp
Run Code Online (Sandbox Code Playgroud)

没有办法将其作为裸NULLs的隐式默认值。