SqlServer STUFF函数:
STUFF(<character_expression>,<开始>,<长度>,<character_expression>)
<character_expression>参数是给定的字符串数据,可以是字符或二进制数据的常量,变量或列。
<start>参数是一个整数值,指定开始删除和插入的位置,可以是BIGINT类型。如果<开始>或<长度>参数为负数,则返回NULL字符串。如果<start>参数比第一个<character_expression>长,则返回一个NULL字符串。
<length>参数可以是BIGINT类型,它是一个整数,指定要删除的字符数。如果<length>比第一个<character_expression>长,则删除发生到最后一个<character_expression>中的最后一个字符
DECLARE @Time VARCHAR(10)
SET @Time = ‘1030’
SELECT STUFF(@Time, 3, 0, ‘:’) AS [HH:MM]
输出:10:30
我们给定的字符串为@Time即1030,我们从第3个位置开始,删除长度为0,此时则在3前面插入冒号,结果如上图输出10:30。
DECLARE @CreditCardNumber VARCHAR(20)
SET @CreditCardNumber = ‘370200199408103544’
SELECT STUFF(@CreditCardNumber, LEN(@CreditCardNumber) -3, 4,
‘XXXX’) AS [Output]
输出:37020019940810XXXX
如上我们将身份证通过STUFF将最后四位用XXXX代替。以上是STUFF最基础的用法
mysql INSERT函数:
mysql>
SELECT
INSERT
(
'abcdef'
, 2, 3,
'ijklmn'
);
+
----------------------------------+
|
INSERT
(
'abcdef'
, 2, 3,
'ijklmn'
) |
+
----------------------------------+
| aijklmnef |
+
----------------------------------+