使用 REGEXP_REPLACE 的奇怪结果 - 字符串被聚合
Wierd result using REGEXP_REPLACE - strings are aggregated
我正在尝试使用 REGEXP_REPLACE
将一些字母替换为其他字母。
这是我的查询 - 我将使用 sakila
样本数据库:
SELECT first_name,
CONVERT(REGEXP_REPLACE(first_name,'a','d') USING utf16) AS replaced
FROM sakila.actor
这是结果 (MySql Workbench, 8.0.11) - 如您所见,结果是 "aggregated":
我尝试用 this fiddle 复制它,但它没有复制。
为什么会这样?
为什么要使用 utf16?
为什么在 REPLACE
完成工作时使用 REGEXP_REPLACE
? (切换可能解决问题。)
某些版本中存在一个错误,可能导致结果越来越长。请参阅 https://bugs.mysql.com/bug.php?id=90803 ,它已在 8.0.12 中修复。升级.
使用什么版本的Workbench并不重要;您使用的 MySQL 是什么版本。
我正在尝试使用 REGEXP_REPLACE
将一些字母替换为其他字母。
这是我的查询 - 我将使用 sakila
样本数据库:
SELECT first_name,
CONVERT(REGEXP_REPLACE(first_name,'a','d') USING utf16) AS replaced
FROM sakila.actor
这是结果 (MySql Workbench, 8.0.11) - 如您所见,结果是 "aggregated":
我尝试用 this fiddle 复制它,但它没有复制。
为什么会这样?
为什么要使用 utf16?
为什么在
REPLACE
完成工作时使用REGEXP_REPLACE
? (切换可能解决问题。)某些版本中存在一个错误,可能导致结果越来越长。请参阅 https://bugs.mysql.com/bug.php?id=90803 ,它已在 8.0.12 中修复。升级.
使用什么版本的Workbench并不重要;您使用的 MySQL 是什么版本。