【发布时间】:2018-08-27 10:47:22
【问题描述】:
当我在 SQL2016 中使用动态数据屏蔽时
(FUNCTION = 'partial(1,"XXXXXXX",0)')
select 语句返回值
"XXXXXXX"
对于我的流程来说不是有效值的空字段。
有什么方法可以使用数据屏蔽,但仅限于具有值的字段(不是空格,也不是空值)?
谢谢
【问题讨论】:
标签: sql-server-2016 data-masking
当我在 SQL2016 中使用动态数据屏蔽时
(FUNCTION = 'partial(1,"XXXXXXX",0)')
select 语句返回值
"XXXXXXX"
对于我的流程来说不是有效值的空字段。
有什么方法可以使用数据屏蔽,但仅限于具有值的字段(不是空格,也不是空值)?
谢谢
【问题讨论】:
标签: sql-server-2016 data-masking
您可以使用CASE 表达式,当相关字段为NULL 或仅包含空格时,该表达式返回空字符串:
SELECT
CASE WHEN COALESCE(REPLACE(field, ' ', ''), '') <> ''
THEN field
ELSE '' END AS field_masked
FROM yourTable;
【讨论】: