首页 >数据库 >mysql教程 >如何从 SQL 中正斜杠分隔的字符串中提取最后一个元素?

如何从 SQL 中正斜杠分隔的字符串中提取最后一个元素?

Patricia Arquette
Patricia Arquette原创
2024-12-30 13:26:14662浏览

How to Extract the Last Element from a Forward-Slash Separated String in SQL?

从数据库中的拆分字符串中提取最后一个元素

在包含多个由正斜杠 (/) 分隔的元素的字符串组成的表中,目标是从每个字符串中提取最后一个元素。例如,给定以下字符串:

Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx
OurStory/MeettheFoodieandtheMD.aspx
TheFood/OurMenu.aspx

所需的输出应该是:

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx

SQL 方法

要实现此目的SQL,可以使用以下查询:

SELECT SUBSTRING( string , LEN(string) -  CHARINDEX('/',REVERSE(string)) + 2  , LEN(string)  ) FROM SAMPLE;

这个查询有效通过:

  1. 使用 REVERSE() 函数反转字符串,将最后一个元素放在开头。
  2. 使用 CHARINDEX() 和反转后的字符串来查找最后一个/.
  3. 通过总长度减去最后一个'/'的位置来计算最后一个元素的起始位置原始字符串并添加 2(以考虑“/”后面的位置和元素的长度)。
  4. 使用 SUBSTRING() 函数根据计算出的起始位置提取最后一个元素length.

这种方法通过反转字符串,找到最后一个 /,然后使用这些发现来确定起始点,从而有效地从每个字符串中提取最后一个元素子字符串提取。

以上是如何从 SQL 中正斜杠分隔的字符串中提取最后一个元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn