ホームページ >データベース >mysql チュートリアル >SQL を使用して区切り文字列から最後の要素を抽出する方法

SQL を使用して区切り文字列から最後の要素を抽出する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-25 22:14:10660ブラウズ

How to Extract the Last Element from a Delimited String Using SQL?

分割文字列からの最後の要素の抽出

デリミタで区切られた複数のコンポーネントを含む文字列を含むテーブルがある場合 (例:この例ではスラッシュ)、各コンポーネントの最後の要素を抽出するタスクが不可欠になります。これは、さまざまなプログラミング手法を通じて実現できます。

SQL を使用する効果的なアプローチの 1 つは、CHARINDEX 関数と SUBSTRING 関数を使用することです。 CHARINDEX 関数は、文字列内の指定された部分文字列の位置を特定し、区切り文字の存在を識別できるようにします。次に、SUBSTRING 関数は文字列から必要な部分を抽出します。

たとえば、次の値を含むテーブルがあるとします。

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

そして、最後の要素 ( filenames):

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx

次の SQL を使用できます。ステートメント:

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

このステートメント内:

  • LEN(string): 文字列の長さを返します。
  • CHARINDEX('/', REVERSE( string)): 反転された文字列内で最後に出現する区切り文字「/」を検索します。これにより、最後の要素の開始位置が決まります。
  • SUBSTRING(string, ..., LEN(string)): CHARINDEX で指定された位置から開始して、文字列から最後の要素を抽出します。

このクエリを実行すると、入力文字列の最後の要素を分離して、目的の結果が得られます。

以上がSQL を使用して区切り文字列から最後の要素を抽出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。