MySQL为用户邮箱增加马赛克函数

1 CREATE DEFINER=`root`@`%` FUNCTION `mosaic`(col varchar(255)) RETURNS varchar(255) CHARSET utf8
2 BEGIN
3 -- 为用户邮箱增加马赛克
4 RETURN 
5 IF(INSTR(col,@)=0,
6 col,
7 REPLACE(col,SUBSTR(col,INSTR(col,@)-4,4),****));
8 
9 END

注:如果不符合邮箱格式,即邮箱中不含有‘@‘,则返回原字段。