| --- |
| { |
| "title": "MASK", |
| "language": "en" |
| } |
| --- |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| ## mask |
| ### description |
| #### syntax |
| |
| `VARCHAR mask(VARCHAR str[, VARCHAR upper[, VARCHAR lower[, VARCHAR number]]])` |
| |
| Returns a masked version of str . By default, upper case letters are converted to "X", lower case letters are converted to "x" and numbers are converted to "n". For example mask("abcd-EFGH-8765-4321") results in xxxx-XXXX-nnnn-nnnn. You can override the characters used in the mask by supplying additional arguments: the second argument controls the mask character for upper case letters, the third argument for lower case letters and the fourth argument for numbers. For example, mask("abcd-EFGH-8765-4321", "U", "l", "#") results in llll-UUUU-####-####. |
| |
| ### example |
| |
| ``` |
| // table test |
| +-----------+ |
| | name | |
| +-----------+ |
| | abc123EFG | |
| | NULL | |
| | 456AbCdEf | |
| +-----------+ |
| |
| mysql> select mask(name) from test; |
| +--------------+ |
| | mask(`name`) | |
| +--------------+ |
| | xxxnnnXXX | |
| | NULL | |
| | nnnXxXxXx | |
| +--------------+ |
| |
| mysql> select mask(name, '*', '#', '$') from test; |
| +-----------------------------+ |
| | mask(`name`, '*', '#', '$') | |
| +-----------------------------+ |
| | ###$$$*** | |
| | NULL | |
| | $$$*#*#*# | |
| +-----------------------------+ |
| ``` |
| |
| ### keywords |
| mask |