mysql - 包含 "The "的字符串的文本操作

标签 mysql text-manipulation

我在 MySQL 数据库中有一个表,其中包含这样的数据;

ID  text
1   Action Jackson
2   The impaler
3   The chubby conquistador
4   Cornholer

我想按字母顺序显示它们,减去前导的“The”。这就是我想出的有效方法。

SELECT ID, CASE LEFT(l.text, 4) WHEN "The " THEN CONCAT(RIGHT(l.text, LENGTH(l.text) - 4), ", The") ELSE l.text END AS "word"
FROM list l

这个解决方案看起来有点笨拙,有人有更优雅的答案吗?

最佳答案

我认为这就是您正在寻找的:

SELECT ID,
       text
FROM list l
ORDER BY TRIM(LEADING 'The ' FROM text);

关于mysql - 包含 "The "的字符串的文本操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11881163/

相关文章:

php - 优化具有大值的 mysql IN 查询

bash - 给定一个 logfile.txt,我只想提取 java 脚本名称;例如使用 bash 脚本的 filename.js

Javascript:如何从充满点和星的textaeria获得0-1数组?

php - MySQL - mysql_fetch_assoc() 不给出一列

c++ - 在 VS 2005 的解决方案中,在所有方法之上添加文本的简单方法?

ruby-on-rails - 如何将文本合并在一起?就像版本控制系统一样?

vim - 如何自动计算和更改文本文件(Java 类)中的数字?

c# - 由 MySQL 支持的 Entity Framework 应用程序仅适用于我的 PC

php - 通过sql和codeigniter检索数据

php - mysql_fetch_array 仅在有更多行时显示 1 行