在MySQL中一次替换多个东西?

时间:2011-09-12 01:26:15

标签: mysql

在MySQL中可以一次替换多个东西吗?

这样做有点笨拙

REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( myField, 'å', 'a' ) , 'Å', 'A' ) , 'Ø', 'O' ) , 'ø', 'o' ) , 'æ', 'a' ) , 'Æ', 'A' )

2 个答案:

答案 0 :(得分:1)

简短的回答,没有。真的没有必要详细说明:)

答案 1 :(得分:1)

您可以创建自己的user defined function来执行此操作,但这可能会放在数据库以外的图层中。

数据库针对需要做的事情,数据提取/排序/分组等进行了优化。

虽然可以对列中的数据进行一些操作,但这并不是它的主要目的(将其留在演示文稿或其他图层中)。

如果必须在DBMS中执行此操作,请考虑使用包含已修改数据的单独列进行此操作,并使用插入/更新触发器进行维护。这至少可以确保仅在数据发生变化时产生成本,而不是每次查看时产生成本。换句话说,它将分摊所有选择的成本。