mysql - 仅当字符串以 MySQL 中的特定模式结尾时才替换 SELECT 中的字符?

标签 mysql sql database

我想在执行 SELECT y MySQL 时用字符串替换某个字符串,但前提是所选值以特定字符串结尾,但我不知道这在 MySQL 中是否可行。

例如,我需要选择一个字段并将“SL”替换为“S.L.”,但前提是字符串以“SL”结尾,因此值将像这样转换:

  • “NAME SL”作者:“NAME S.L.”
  • “SLACK SL A”作者:“SLACK SL A”
  • “正常名称”,作者:“正常名称”

最佳答案

您可以使用case,但我认为您不需要replace()。相反:

select (case when str like '% SL'
             then concat(left(str, length(str) - 2), 'S.L.')
             else str
        end)

关于mysql - 仅当字符串以 MySQL 中的特定模式结尾时才替换 SELECT 中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58956302/

相关文章:

mysql - 通过 Node.js/Express 连接到 MySQL 时遇到问题

sql - 获取某位列所有行的 "OR"结果

php sql 查询没有 foreach 的简单方法

sql - 如何扫描两个查询之间的差异?

c# - Win Form App,安装后数据库一般保存在哪里?

mysql - 连接两个表而不重复

php - 具有各种选项的多对多关系

MySQL Fabric添加组报告用户(fabric)没有适当的权限,当用户有权限时

具有多个子选择的 MySQL SQL 选择查询

SQL 查询按今天(当前)日期显示数据?