You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将MySQL手机号掩码逻辑转换为MS SQL查询实现

MySQL手机号掩码逻辑转换为MS SQL语句

以下是将原MySQL手机号掩码逻辑转换后的MS SQL查询语句,核心是替换MySQL特有的函数为MS SQL对应实现:

CASE
    WHEN LEN(phoneNumber) < 3 THEN phoneNumber
    WHEN LEN(phoneNumber) < 7 THEN LEFT(phoneNumber, 3) + REPLICATE('*', LEN(phoneNumber) - 3)
    ELSE LEFT(phoneNumber, 3) + REPLICATE('*', LEN(phoneNumber) - 7) + RIGHT(phoneNumber, 4)
END AS masked_phone

函数替换说明:

  • MySQL的LENGTH() → MS SQL的LEN():用于获取字符串长度
  • MySQL的RPAD() → MS SQL的REPLICATE():生成指定数量的重复字符,替代填充逻辑更简洁
  • MySQL的SUBSTR(...,1,3) → MS SQL的LEFT(...,3):直接取字符串前3位,语义更清晰
  • 字符串拼接:MS SQL支持用+运算符拼接字符串,若需兼容NULL值(避免某部分为NULL时整体返回NULL),可改用CONCAT()函数:
CASE
    WHEN LEN(phoneNumber) < 3 THEN phoneNumber
    WHEN LEN(phoneNumber) < 7 THEN CONCAT(LEFT(phoneNumber, 3), REPLICATE('*', LEN(phoneNumber) - 3))
    ELSE CONCAT(LEFT(phoneNumber, 3), REPLICATE('*', LEN(phoneNumber) - 7), RIGHT(phoneNumber, 4))
END AS masked_phone

内容的提问来源于stack exchange,提问作者codeman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:20:36