MySQL按字母顺序排序但忽略“The”

我有一个MySQL数据库,里面有一个包含书籍数据的表格.表中的一列称为“标题”.有些标题的开头是“the”,有些则没有.

例:

>“书名一”
>“书名二”
>“书名三”

我需要按字母顺序将这些数据从数据库中拉出来,但是我需要忽略以它开头的标题开头的“the”.

SQL(特别是MySQL)是否提供了在查询中执行此操作的方法?

最佳答案
做一个何时检查列值是否以该值开头的情况,如果是,则返回没有“The”的标题.这将是您稍后将用于排序顺序的新列

select title, case when title like 'The %' then trim(substr(title from 4)) else title end as title2 from tablename order by title2;

转载注明原文:MySQL按字母顺序排序但忽略“The” - 代码日志