如何在SQL2016中防止数据屏蔽

时间:2018-08-27 10:47:22

标签: sql-server-2016 data-masking

当我在SQL2016中使用动态数据屏蔽时

(FUNCTION = 'partial(1,"XXXXXXX",0)')

select语句返回值

"XXXXXXX"

对于不是我的过程有效值的空字段。

有什么方法可以使用数据屏蔽,但仅适用于具有值的字段(不能为空格,不能为null)?

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用CASE表达式,当所涉及的字段为NULL或除空格外不包含任何内容时,该表达式将返回空字符串:

SELECT
    CASE WHEN COALESCE(REPLACE(field, ' ', ''), '') <> ''
         THEN field
         ELSE '' END AS field_masked
FROM yourTable;