甲骨文用'N/A'替换'0'
oracle replace '0' with 'N/A'
我想用 'N/A' 替换 RANDOM 列中等于“0”、NULL、'NONE'、'NA' 的数据。
我使用嵌套替换如下:
SELECT IDNO,
REPLACE (
REPLACE (
REPLACE(
REPLACE(RANDOM, 'NONE|NA', 'N/A'),
'0','N/A'),
'-',''),
NULL, 'N/A') AS NUMBER
FROM TABLE1
它确实用 'N/A' 替换了数据“0”。但是,它确实会替换其中也包含 0 的其他数据。示例:04110 更改为 N/A411N/A
我只想替换恰好值为“0”的那个。
SELECT IDNO,
REPLACE (
REPLACE (
REPLACE(
REPLACE(RANDOM, 'NONE|NA', 'N/A'),
'/0','N/A'),
'-',''),
NULL, 'N/A') AS NUMBER
FROM TABLE1
当我这样做时(在 0 前面添加 \),它不会将任何 0 更改为 'N/A'
然后如何用 'N/A' 替换具有精确值“0”的数据?
提前谢谢你。 :)
提示:检查您的 sql 服务器的 IF 功能。试试这个:
SELECT
IDNO,
IF(Random IS NULL or Random = '0' or Random='NONE' or Random = 'NA', 'N/A', Random)
FROM
TABLE1
... RANDOM that equal to '0', NULL, 'NONE', 'NA' WITH 'N/A'
“等于”表示该列中没有其他内容。在这种情况下,使用 CASE
:
select idno,
case when random in ('0', 'NONE', 'NA') or radnom is NULL then 'N/A'
else random
end as result
from table1
我想用 'N/A' 替换 RANDOM 列中等于“0”、NULL、'NONE'、'NA' 的数据。 我使用嵌套替换如下:
SELECT IDNO,
REPLACE (
REPLACE (
REPLACE(
REPLACE(RANDOM, 'NONE|NA', 'N/A'),
'0','N/A'),
'-',''),
NULL, 'N/A') AS NUMBER
FROM TABLE1
它确实用 'N/A' 替换了数据“0”。但是,它确实会替换其中也包含 0 的其他数据。示例:04110 更改为 N/A411N/A
我只想替换恰好值为“0”的那个。
SELECT IDNO,
REPLACE (
REPLACE (
REPLACE(
REPLACE(RANDOM, 'NONE|NA', 'N/A'),
'/0','N/A'),
'-',''),
NULL, 'N/A') AS NUMBER
FROM TABLE1
当我这样做时(在 0 前面添加 \),它不会将任何 0 更改为 'N/A'
然后如何用 'N/A' 替换具有精确值“0”的数据?
提前谢谢你。 :)
提示:检查您的 sql 服务器的 IF 功能。试试这个:
SELECT
IDNO,
IF(Random IS NULL or Random = '0' or Random='NONE' or Random = 'NA', 'N/A', Random)
FROM
TABLE1
... RANDOM that equal to '0', NULL, 'NONE', 'NA' WITH 'N/A'
“等于”表示该列中没有其他内容。在这种情况下,使用 CASE
:
select idno,
case when random in ('0', 'NONE', 'NA') or radnom is NULL then 'N/A'
else random
end as result
from table1