SQL:输出空列的默认字符串
我正在使用sqlplus命令提示符,我想显示一个默认字符串,让我们为所有空列显示'ITISNULL',而不更新它们。 从注册中选择*,其中 注册是一个表,其lgrade列中可能包含null。我不想更新它,只想输出一个字符串,比如说,被分级以打印在它的位置SQL:输出空列的默认字符串,sql,oracle,Sql,Oracle,我正在使用sqlplus命令提示符,我想显示一个默认字符串,让我们为所有空列显示'ITISNULL',而不更新它们。 从注册中选择*,其中 注册是一个表,其lgrade列中可能包含null。我不想更新它,只想输出一个字符串,比如说,被分级以打印在它的位置 是否有任何SQL函数可用于此操作?有几种方法可用于此操作。一种选择是使用合并: 不能为所有字段指定*,必须相应地指定每个列名。有几种方法可以做到这一点。一种选择是使用合并: 您不能为所有字段指定*,您必须相应地指定每个列名。NVL是您的答案,您
是否有任何SQL函数可用于此操作?有几种方法可用于此操作。一种选择是使用合并:
不能为所有字段指定*,必须相应地指定每个列名。有几种方法可以做到这一点。一种选择是使用合并:
您不能为所有字段指定*,您必须相应地指定每个列名。NVL是您的答案,您需要为每个可能有空值的列指定
NVL是您的答案,您将需要为每个可能具有空值的列执行此操作 在SQL*Plus中,可以使用SET NULL: 所有空结果将显示为ITISNLL。唯一的问题是宽度小于ITISNLL长度8的列可能会换行,至少在我的旧版本SQL*Plus 9.2中是这样 要将SQL*Plus返回其默认值,请执行以下操作:
SQL> SET NULL ''
在SQL*Plus中,可以使用SET NULL:
所有空结果将显示为ITISNLL。唯一的问题是宽度小于ITISNLL长度8的列可能会换行,至少在我的旧版本SQL*Plus 9.2中是这样
要将SQL*Plus返回其默认值,请执行以下操作:
SQL> SET NULL ''
当列为null时,有很多方法可以显示字符串。如上所述,一些方法:- 每当col1的值为null时,使用NVL显示“ITISNLL”
select nvl(col1, 'itisnull') from tableName;
select
case when col1 is null then
'itisnull'
else col1
end colum from tableName;
每当col1的值为null时,使用用例显示“itisnull”
select nvl(col1, 'itisnull') from tableName;
select
case when col1 is null then
'itisnull'
else col1
end colum from tableName;
当列为null时,有很多方法可以显示字符串。如上所述,一些方法:- 每当col1的值为null时,使用NVL显示“ITISNLL”
select nvl(col1, 'itisnull') from tableName;
select
case when col1 is null then
'itisnull'
else col1
end colum from tableName;
每当col1的值为null时,使用用例显示“itisnull”
select nvl(col1, 'itisnull') from tableName;
select
case when col1 is null then
'itisnull'
else col1
end colum from tableName;
另一个很好的方法。从未尝试过测试它,但我想知道一个是否比另一个更快not@Limey-这里有一个关于差异的好帖子:另一个很好的方法。从未尝试过测试它,但我想知道一个是否比另一个更快not@Limey-这里有一个关于差异的好帖子:我几乎对此投了赞成票,但我不确定if-esle部分。我快速浏览了一下文档,我不相信这是一个使用这种语法的合适地方。你忘了我最喜欢的两个NVL2和Decode。我几乎对此投了赞成票,但我不确定if-esle部分。我快速浏览了一下文档,我不认为这是使用该语法的合适位置。你忘了我最喜欢的两个NVL2和DECODE