MySQL には、主に left()、right()、substring()、substring_index() の 4 つの文字列インターセプト関数があります。それぞれ独自の使用シナリオがあります。今日は少し時間を取って、それらについて説明させてください、マーク!
1. LEFT() 関数LEFT(文字列、長さ) は、文字列の左側の最初の文字から始めて、長さ分の文字を抽出します。長さは 0 より大きくなければなりません。<= 0 の場合、空の文字列が返されます。次に例を示します。 mysql> web_info w から LEFT('www.csdn.net',5) を選択します。 +------------------+ | 左('www.csdn.net',5) | +------------------+ | www.c | +------------------+ セット内の 1 行 (0.00 秒) 2. RIGHT() 関数LEFT(文字列、長さ) は、文字列の右側の最初の文字から始めて、長さ分の文字を順方向に抽出します。長さは 0 より大きくなければなりません。<= 0 の場合、空の文字列が返されます。 mysql> web_info w から RIGHT('www.csdn.net',5) を選択します。 +-------------------------+ | 右('www.csdn.net',5) | +-------------------------+ | n.net | +-------------------------+ セット内の 1 行 (0.00 秒) 3. SUBSTRING() 関数substring() は文字列を分割するために特に使用される関数です。主に 2 つの形式があります。
以下は、上記 2 種類のステートメントの SQL 標準バージョンであり、同じ意味を持ちます。長いですが、より表現力豊かです。 SUBSTRING(位置からの文字列); SUBSTRING(位置から長さまでの文字列); SUBSTRING() の使用方法の例を 2 つ見てみましょう。 1.SUBSTRING(文字列,位置)
たとえば、文字列 "www.csdn.net" から部分文字列 "csdn.net" を取得するには、次の SELECT ステートメントに示すように、部分文字列の位置は 5 から始まる必要があります。 mysql> web_info w から部分文字列 ('www.csdn.net',5) を選択します。 +-----------------------------+ | 部分文字列('www.csdn.net',5) | +-----------------------------+ 日本語 +-----------------------------+ セット内の 1 行 (0.00 秒) 2.SUBSTRING(文字列,位置,長さ) 文字列と位置のパラメータに加えて、SUBSTRING 関数には長さのパラメータもあります。 たとえば、www.csdn.net で csdn を取得する場合の SQL は次のようになります。 mysql> web_info w から部分文字列 ('www.csdn.net',5,4) を選択します。 +---------------------------------+ | 部分文字列('www.csdn.net',5,4) | +---------------------------------+ 日本語 +---------------------------------+ セット内の 1 行 (0.00 秒) または、位置を設定して後ろから前へカウントします。SQL は次のようになります。 mysql> web_info w から部分文字列 ('www.csdn.net',-8,4) を選択します。 +--------------------------------+ | 部分文字列('www.csdn.net',-8,4) | +--------------------------------+ 日本語 +--------------------------------+ セット内の 1 行 (0.00 秒) または、標準の SQL 形式で記述することもできます。SQL は次のようになります。 mysql> web_info w から部分文字列 ('www.csdn.net' FROM 5 FOR 4) を選択します。 +----------------------------------------+ | 部分文字列 ('www.csdn.net' 5 から 4 へ) | +----------------------------------------+ 日本語 +----------------------------------------+ セット内の 1 行 (0.00 秒) さらに、MySQL の mid() と substr() は substring() 関数と同等です。 4. SUBSTRING_INDEX() 関数SUBSTRING_INDEX(str,delim,count)は、特定の識別子「delim」で部分文字列を抽出する関数です。日常生活でよく使います。
たとえば、「www.csdn.net」の場合、識別子「.」が最初に出現する前の部分文字列を取得するには、SQL は次のようになります。 mysql> web_info w から SUBSTRING_INDEX('www.csdn.net','.',1) を選択します。 +---------------------------------------+ | SUBSTRING_INDEX('www.csdn.net','.',1) | +---------------------------------------+ | ウェブサイト | +---------------------------------------+ セット内の 1 行 (0.00 秒) 識別子 '.' が最初に出現した後の部分文字列を取得します。SQL は次のとおりです。 mysql> web_info w から SUBSTRING_INDEX('www.csdn.net','.',-2) を選択します。 +----------------------------------------+ | SUBSTRING_INDEX('www.csdn.net','.',-2) | +----------------------------------------+ 日本語 +----------------------------------------+ セット内の 1 行 (0.00 秒) 2 つの「.」の中央を取得しますか?ネスト可能で、SQL は次のようになります。 mysql> web_info w から SUBSTRING_INDEX(substring_index('www.csdn.net','.',2),'.',-1) を選択します。 +-----------------------------------------------------------------+ | SUBSTRING_INDEX(substring_index('www.csdn.net','.',2),'.',-1) | +-----------------------------------------------------------------+ 日本語 +-----------------------------------------------------------------+ セット内の 1 行 (0.00 秒) 5. 実際の操作テストテーブルとして web_info テーブルを使用し、データは次のようになります。 mysql> web_info から * を選択します。 +------+--------+----------------+---------------------+ | w_id | w_name | w_domain | pub_time | +------+--------+----------------+---------------------+ | 1 | CSDN | www.csdn.net | 2020-09-03 11:29:29 | | 5 | 百度 | www.baidu.com | 2020-09-18 14:37:38 | | 6 | タオバオ | www.taobao.com | 2020-09-03 14:37:57 | +------+--------+----------------+---------------------+ セット内の 3 行 (0.00 秒) 要件 1: web_info データのファーストレベルドメイン名を取得します。 mysql> web_info w から SUBSTRING_INDEX(w_domain,'.',-2),w.* を選択します。 +----------------------------------+------+--------+----------------+----------------------+ | SUBSTRING_INDEX(w_domain,'.',-2) | w_id | w_name | w_domain | pub_time | +----------------------------------+------+--------+----------------+----------------------+ | csdn.net | 1 | CSDN | www.csdn.net | 2020-09-03 11:29:29 | | baidu.com | 5 | 百度 | www.baidu.com | 2020-09-18 14:37:38 | | taobao.com | 6 | タオバオ | www.taobao.com | 2020-09-03 14:37:57 | +----------------------------------+------+--------+----------------+----------------------+ セット内の 3 行 (0.00 秒) 要件 2: w_domain フィールドのデータを第 1 レベル ドメイン名に変更します。 web_info を更新します。w_domain を SUBSTRING_INDEX(w_domain,'.',-2) に設定します。 変更されたクエリ: mysql> web_info から * を選択; +------+--------+------------+---------------------+ | w_id | w_name | w_domain | pub_time | +------+--------+------------+---------------------+ | 1 | CSDN | csdn.net | 2020-09-03 14:54:59 | | 5 | 百度 | baidu.com | 2020-09-03 14:54:59 | | 6 | タオバオ | taobao.com | 2020-09-03 14:54:59 | +------+--------+------------+---------------------+ セット内の 3 行 (0.00 秒) さて、今日のMySQLの文字列分割機能は以上です。役に立ったら、ぜひ無料で共有してくださいね~~ MySQL セグメンテーション関数 substring() の具体的な使用法に関するこの記事はこれで終わりです。MySQL セグメンテーション関数 substring に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: NetEase ブログで使用されているシンプルな Web ページ コード
>>: CSSアニメーションに基づくSVGボタンのサンプルコード
Linux に puppeteer をインストールするときに、次の問題が発生する可能性があります。こ...
重要なポイント: 1. CSS3 3Dアニメーションをマスターする2. ページめくり後のページ内容の...
1. スプレッド演算子スプレッド演算子は 3 つのドット ... で、複数の引数 (関数呼び出しなど...
導入クロージャは JavaScript の非常に強力な機能です。いわゆるクロージャは関数内の関数です...
この記事では、MySQL 8.0.13のインストールと設定のチュートリアルを参考までに紹介します。具...
ゲーム史上最高スコアトップ100をチェックSQLコード cdb_playsgame ps から ps...
1. インデックスの原則インデックスは、列内の特定の値を持つ行をすばやく見つけるために使用されます。...
1. 水平中央公開コード: html: <div class="parent&quo...
サーバーにはNginx、データベースサポートにはMongo、Python言語のWebフレームワークに...
リストは、テーブルをコンテナーとして使用するテキストまたはグラフの形式として定義されます。商品の種類...
現在では多くの人がスマートフォンを使用していることを考慮すると、モバイル Web ページの書き方は、...
この記事では、タブバーの切り替え効果を簡単に実現するためのJavaScriptの具体的なコードを参考...
Docker ネットワークの作成に –subnet を追加した後、docker network ls...
パッシブチェックパッシブ ヘルス チェックでは、NGINX と NGINX Plus はイベントの発...
目次概要1. スタックとヒープ2. 変数オブジェクトと基本データ型3. 参照データ型とヒープメモリメ...