ホームページ > データベース > mysql チュートリアル > SQLの最後のスラッシュの後の文字列の最後の要素を抽出するにはどうすればよいですか?

SQLの最後のスラッシュの後の文字列の最後の要素を抽出するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-26 06:18:11
オリジナル
973 人が閲覧しました

How to Extract the Last Element of a String After the Final Slash in SQL?

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

問題:

を含むテーブルを考えます。形式の値:

Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx
OurStory/MeettheFoodieandtheMD.aspx
TheFood/OurMenu.aspx
ログイン後にコピー

目的は、出力が次のようになるように、各文字列から最後の「/」文字の後の最後の要素を抽出することです。

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx
ログイン後にコピー
ログイン後にコピー

解決策:

SQL アプローチ:

SQL でこれを実現するには、次を利用します。 query:

SELECT SUBSTRING(string , LEN(string) -  CHARINDEX('/',REVERSE(string)) + 2  , LEN(string)  ) FROM SAMPLE;
ログイン後にコピー
  • SUBSTRING 関数は、開始位置、長さ、入力文字列の 3 つの引数を取ります。
  • CHARINDEX 関数は、別の文字列内で指定された文字列が最初に出現する位置を見つけます。 .
  • REVERSE は入力文字列を反転し、最後の文字列を検索できるようにします。 "/".
  • この式は、抽出する部分文字列の開始位置 (文字列の末尾から最後の "/" から末尾までの長さに 2 を加えたもの) を計算します。
  • クエリは、指定された SAMPLE から抽出された部分文字列を選択します。 table.

例:

指定された入力の場合、出力は次のようになります:

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx
ログイン後にコピー
ログイン後にコピー

詳細については、この JSFiddle を参照してください。ライブデモンストレーション: http://sqlfiddle.com/#!3/41ead/11

以上がSQLの最後のスラッシュの後の文字列の最後の要素を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート