在从末尾开始计数的特定索引处的字符串中插入子字符串。如何在mysql中使用?

在从末尾开始计数的特定索引处的字符串中插入子字符串。如何在mysql中使用?,mysql,Mysql,我对mysql insert有问题 我在一个表中有长度为15-20个字符的可变字符串,我需要在每个字符串中添加4个字符。问题是,我需要在字符串末尾之前添加正好4个字符 例如,给定输入字符串1234567890-123,我需要在“-”之前添加“ABCD”,以便该字符串变为1234567890ABCD-123 我尝试了插入函数,但它无法完成。 是否有解决方案,或者我需要编写一个应用程序来实现这一点? 我使用MySQL 4.1。 如果要在数据库端执行此操作,可以在MySQL中利用。如果要在数据库端执行

我对mysql insert有问题

我在一个表中有长度为15-20个字符的可变字符串,我需要在每个字符串中添加4个字符。问题是,我需要在字符串末尾之前添加正好4个字符

例如,给定输入字符串1234567890-123,我需要在“-”之前添加“ABCD”,以便该字符串变为1234567890ABCD-123

我尝试了插入函数,但它无法完成。 是否有解决方案,或者我需要编写一个应用程序来实现这一点? 我使用MySQL 4.1。
如果要在数据库端执行此操作,可以在MySQL中利用。

如果要在数据库端执行此操作,可以在MySQL中利用

和往常一样,在运行这些查询之前,首先在一个小样本数据上测试它

像往常一样,在运行此类查询之前,首先在一小部分数据上进行测试。

提供一个解决方案:

UPDATE `table` SET `column` = REPLACE(`column`, '-', 'ABCD-');
提供解决方案:

UPDATE `table` SET `column` = REPLACE(`column`, '-', 'ABCD-');
这样做:

select insert('1234567890-123', locate('-', '1234567890-123'), 0, 'ABCD');
我使用了文字“1234567890-123”,但对于列,它看起来像:

select insert(col, locate('-', col), 0, 'ABCD');
请注意,这将在连字符-之前插入字符串。或者,您可以将其插入特定位置,或从末端向后插入:lengthcol-4执行以下操作:

select insert('1234567890-123', locate('-', '1234567890-123'), 0, 'ABCD');
我使用了文字“1234567890-123”,但对于列,它看起来像:

select insert(col, locate('-', col), 0, 'ABCD');

请注意,这将在连字符-之前插入字符串。或者,您可以将其插入到特定位置,或者从末尾向后插入:lengthcol-4

您知道MySQL 4.1可以追溯到2004年吗。你知道MySQL 4.1可以追溯到2004年吗。抱歉,我在原始问题中没有提到抱歉,我在原始问题中没有提到