Sql 如何用存储过程填充表中的所有空值

Sql 如何用存储过程填充表中的所有空值,sql,sql-server,stored-procedures,sqldatatypes,Sql,Sql Server,Stored Procedures,Sqldatatypes,谢谢你的评论 我很容易遇到问题,我知道你们朋友会解决的 我有一个有14列的表,其中8列是数值的(int,biging,numeric(18,0))和 其他cols数据类型为文本值,如char(10)、varchar(255)、Nvarchar(4000) 此表由相同的随机值填充,并且在所有列(ID除外)中有许多空值 我想创建一个或多个存储过程,将数值列中的所有空单元格填充为0和 字符串列中的所有空值都设置为“无值” 如果这个SP将返回所有列中所有空值的计数,那么它将是惊人的 非常感谢 Updat

谢谢你的评论

我很容易遇到问题,我知道你们朋友会解决的

我有一个有14列的表,其中8列是数值的(int,biging,numeric(18,0))和 其他cols数据类型为文本值,如char(10)、varchar(255)、Nvarchar(4000) 此表由相同的随机值填充,并且在所有列(ID除外)中有许多空值

我想创建一个或多个存储过程,将数值列中的所有空单元格填充为0和 字符串列中的所有空值都设置为“无值”

如果这个SP将返回所有列中所有空值的计数,那么它将是惊人的

非常感谢

Update Table1
set col1='0'
where co1 is null
等等

等等

等等


依此类推……

您可以如上所述进行更新,但如果需要将默认字段设置为0,则应该在创建表时使用默认字段

CREATE TABLE dbo.Something
(
    id               INT IDENTITY(1, 1),
    col1        INT DEFAULT 0
)
但是如果它的遗留代码比insert proc上的代码大,那么您可以像

CREATE PROCEDURE [dbo].[spa_CRUDSomething]
    @flag CHAR(1)
   ,  @col1 INT = 0
AS 

通常,问题不在于进行修复,而在于修复修复的方式。您可以如上所述进行更新,但如果需要将默认字段设置为0,则应该在创建表时使用默认值

CREATE TABLE dbo.Something
(
    id               INT IDENTITY(1, 1),
    col1        INT DEFAULT 0
)
但是如果它的遗留代码比insert proc上的代码大,那么您可以像

CREATE PROCEDURE [dbo].[spa_CRUDSomething]
    @flag CHAR(1)
   ,  @col1 INT = 0
AS 

通常,问题不在于进行修复,而在于修复修复的方式。您可以如上所述进行更新,但如果需要将默认字段设置为0,则应该在创建表时使用默认值

CREATE TABLE dbo.Something
(
    id               INT IDENTITY(1, 1),
    col1        INT DEFAULT 0
)
但是如果它的遗留代码比insert proc上的代码大,那么您可以像

CREATE PROCEDURE [dbo].[spa_CRUDSomething]
    @flag CHAR(1)
   ,  @col1 INT = 0
AS 

通常,问题不在于进行修复,而在于修复修复的方式。您可以如上所述进行更新,但如果需要将默认字段设置为0,则应该在创建表时使用默认值

CREATE TABLE dbo.Something
(
    id               INT IDENTITY(1, 1),
    col1        INT DEFAULT 0
)
但是如果它的遗留代码比insert proc上的代码大,那么您可以像

CREATE PROCEDURE [dbo].[spa_CRUDSomething]
    @flag CHAR(1)
   ,  @col1 INT = 0
AS 

通常,问题不在于进行修复,而在于修复修复的方式。您可以使用存储过程中的循环,但最好的方法是检查所有列的空值,因为可能有任何列具有不同的数据类型


我希望这会有所帮助。

您可以使用存储过程中的循环,但最好的方法是检查所有列的空值,因为任何列都可能具有不同的数据类型


我希望这会有所帮助。

您可以使用存储过程中的循环,但最好的方法是检查所有列的空值,因为任何列都可能具有不同的数据类型


我希望这会有所帮助。

您可以使用存储过程中的循环,但最好的方法是检查所有列的空值,因为任何列都可能具有不同的数据类型


我希望这会有帮助。

这是家庭作业问题吗?您能提供一个您想要的输出的例子吗?通常最好保持数据干净,并在查询时进行这些类型的替换。这是一个家庭作业问题吗?您能提供一个您想要的输出的例子吗?通常最好保持数据干净,并在查询时进行这些类型的替换。这是一个家庭作业问题吗?您能提供一个您想要的输出的例子吗?通常最好保持数据干净,并在查询时进行这些类型的替换。这是一个家庭作业问题吗?能否提供所需输出的示例?通常最好保持数据干净,并在查询时进行此类替换。假设
col1
是数字列(“将数字列中的所有空单元格填充为0”),为什么对数值/整数常量使用单引号:
'0'
?假设
col1
是数值列(“将数值列中的所有空单元格填充为0”),为什么对数值/整数常量使用单引号:
'0'
?假设
col1
是数值列(“将数值列中的所有空单元格填充为0”),为什么对数值/整数常量使用单引号:
'0'
?假设
col1
是数值列(“将数值列中的所有空单元格填充为0”),为什么对数字/整数常量使用单引号:
'0'
?谢谢用户…你对这个表有一些类型,我忘记了它谢谢用户…你对这个表有一些类型,我忘记了它谢谢用户…你对这个表有一些类型,我忘记了它谢谢用户…你对这个表有一些类型,我忘记了它信息技术