MySQL 在函数INSERT(str, Pos, len, newstr)中,如果’Pos’不在字符串长度内,结果会是什么

MySQL 在函数INSERT(str, Pos, len, newstr)中,如果’Pos’不在字符串长度内,结果会是什么

如果插入位置不在字符串长度内,MySQL INSERT()函数将不执行插入。有一些情况需要注意,比如我们传递负数或0(零)值,或者在原始字符串中当值超过总字符数的值时,我们可以说‘pos’不在字符串的长度内。可以通过以下示例进行理解-

阅读更多:MySQL 教程

例子

下面的查询将不执行插入,因为‘pos’不在字符串的长度内,即负值。

mysql> Select INSERT('Tutorialspoint',-1,4,'.com');
+--------------------------------------+
| INSERT('Tutorialspoint',-1,4,'.com') |
+--------------------------------------+
| Tutorialspoint                       |
+--------------------------------------+
1 row in set (0.00 sec)

下面的查询将不执行插入,因为‘pos’不在字符串的长度内,即0(零)。

mysql> Select INSERT('Tutorialspoint',0,4,'.com');
+-------------------------------------+
| INSERT('Tutorialspoint',0,4,'.com') |
+-------------------------------------+
| Tutorialspoint                      |
+-------------------------------------+
1 row in set (0.00 sec)

下面的查询将不执行插入,因为‘pos’不在字符串的长度内,即超出原始字符串中字符数的值2。在下面的示例中,原始字符串’Tutorialspoint’有14个字符,我们给出的位置值为16,因此不会插入。

mysql> Select INSERT('Tutorialspoint',16,4,'.com');
+--------------------------------------+
| INSERT('Tutorialspoint',16,4,'.com') |
+--------------------------------------+
| Tutorialspoint                       |
+--------------------------------------+
1 row in set (0.00 sec)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程