Mysql的INSERT函数

Mysql的INSERT函数教程

INSERT 中文翻译为插入的意思,但是在 Mysql 中,INSERT 为替换字符串函数。

INSERT描述

语法

INSERT(s1,x,len,s2)

描述

返回字符串 s1,用 s2 替换 s1 字符串从 x 位置开始,长度为 len 的子字符串。若 x 超过字符串长度,则返回值为原始字符串。假如 len 的长度大于 s1 字符串从 x 位置开始,到结束位置字符的长度,则从位置 x 开始替换。若任何一个参数为 NULL,则返回值为 NULL。

案例

我们执行下面sql:

-- 嗨客网(www.haicoder.net) SELECT INSERT('haicoder.net',1,3,'HAI') AS col1, INSERT('HAI',NULL,4,'NET') AS col2, INSERT('haicorder',10,10,'net') AS col3, INSERT('HAI',-1,4,'NET') AS col4, INSERT('haicoder',6,5,'DERNET') AS col5;

运行结果如下:

03 INSERT函数.png

有几年编程经验的同学都知道,一般都数组开始都是从 0 开始的,但是 INSERT 函数中,对字符串操作的话,是从 1 开始。从上面的例子中,我们可以看到如果参数中含有 NULL,那么结果就是 NULL。第一个字符串表示原字符串数据,第二个参数表示被替换字符串的开始位置,第三个表示被替换字符串长度。

如果长度大于从第二个参数位置开始到最后位置的长度,就用第四个字符全部替换,否则就将从第二个参数位置开始的地方获取指定长度的字符串用第四个字符串替换。

Mysql的INSERT函数总结

INSERT 函数在 Mysql 中表示字符串替换,它和我们一般意义上的插入数据不一样,在 SELECT 语句中使用。