MySQLの比較演算子正規表現マッチングREGEXPの使用の詳細な説明

MySQLの比較演算子正規表現マッチングREGEXPの使用の詳細な説明

1. データを初期化する

`test_01` が存在する場合はテーブルを削除します。
テーブル「test_01」を作成します(
 `id` int(0) NULLではない、
 `stu` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント '学生番号',
 `user` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'User',
 `km` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント '件名',
 `fs` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'スコア',
 `time` datetime(0) NULL デフォルト NULL コメント 'time',
 BTREE を使用した主キー (`id`)
) エンジン = InnoDB 文字セット = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

`test_01` に INSERT INTO VALUES (1, 'X0219001', '小三', '语文', '98', '2020-08-06 15:51:21');
`test_01` に値 (2, 'X0219001', '小三', '数学', '90', '2020-07-01 15:51:25') を挿入します。
`test_01` に値 (3, 'x0219001', '小三', '英语', '77', '2020-06-01 15:51:28') を挿入します。
`test_01` に INSERT INTO VALUES (4, 'X0219002', '小二', '语文', '98', '2020-08-06 15:51:21');

1. 基本的な文字マッチング

フィールドに「X」が含まれる学生番号と一致します。大文字と小文字を区別しない

SELECT * FROM test_01 WHERE stu REGEXP 'X';

ここに画像の説明を挿入

2. 「.」は任意の文字に一致することを意味する

複数の文字を一致させる必要がある場合は、ドットをさらに追加します。

SELECT * FROM test_01 WHERE stu REGEXP '.9001';
SELECT * FROM test_01 WHERE stu REGEXP '.02..0';

ここに画像の説明を挿入

3. '|'は2つの文字列のうちの1つを検索することを意味します

SELECT * FROM test_01 WHERE user REGEXP '二|四';

ここに画像の説明を挿入

4. '[ ]'は任意の1文字に一致します

SELECT * FROM test_01 WHERE stu REGEXP '0[23]';

ここで[23]は[2|3]と同等であり、1つの[]は1つの文字に一致します。

ここに画像の説明を挿入

マッチング範囲
[0123456789] または [0-9] は 0 から 9 までの数字に一致します
[az]は任意のアルファベット文字に一致します

5. 特殊文字のマッチング

1.\ エスケープ文字

つまり、エスケープです。正規表現内で特別な意味を持つすべての文字は、この方法でエスケープする必要があります。

メタ文字例示する
\\-検索を示す-
\\。検索を示します。

2. \はメタ文字を引用するためにも使用される

メタ文字例示する
\fページ区切り
\n改行
\r入力
\t集計
\v縦書き集計

3. 複数のインスタンスを一致させる

メタ文字例示する
* 0件以上の一致
+ 1 つ以上の一致 ({1, } に等しい)
? 0 または 1 の一致 ({0, 1} に等しい)
{n}指定された一致数
{n, }少なくとも指定された数の一致
{n,m}一致する数字の範囲(mは255を超えない)

4. 文字クラスのマッチング

コード説明する
[:a;数字:]任意の文字と数字([a-zA-Z0-9]と同じ)
[:アルファ:]任意の文字([a-zA-Z]と同じ)
[:空白:]スペースとタブ([\t]と同じ)
[:コントロール:] ASCII 制御文字 (ASCII 0 ~ 31 および 127)
[:桁:]任意の数字([0-9]と同じ)
[:グラフ:] ["print:]と同じですが、スペースはありません
[:より低い:]任意の小文字の行([az]と同じ)
[:印刷:]印刷可能な文字
[:punct:] [:alnum:] または [:cntrl:] のどちらにも含まれない文字
[空間:]スペースを含む任意の空白文字([\f\n\t\r\v]と同じ)
[:アッパー:]任意のサイズの文字([AZ]と同じ)
[:x桁:]任意の16進数([a-fA-F0-9]と同じ)

これで、MySQL 比較演算子正規表現マッチング REGEXP の詳細な使用法に関するこの記事は終了です。MySQL 正規表現マッチング REGEXP の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MYSQL 演算子の概要
  • MySQL <> および <=> 演算子の紹介
  • MySql における特殊演算子の使用の概要
  • MySQLでよく使われる演算子と関数の概要
  • MySQL ノート — SQL 演算子

<<:  Nginxの仕組みの詳細な説明

>>:  Webpack4プラグインの実装原理についての簡単な説明

推薦する

MySQL IN ステートメントにおける低速クエリの効率を最適化する手法の例

表の構造は以下のとおりです。記事数は690件のみです。 記事テーブル article(id,titl...

Mysql Explainコマンドの使用と分析

mysql explain コマンドは、MySQL がインデックスを使用して選択ステートメントを処理...

MySQLを水平から垂直に、垂直から水平に変換する方法

データの初期化 `test_01` が存在する場合はテーブルを削除します。 テーブル「test_01...

MySQL テーブルをコピーする 3 つの方法 (要約)

テーブル構造とそのデータをコピーする次のステートメントは、データを新しいテーブルにコピーします。注:...

携帯電話に GreasyFork js スクリプトをインストールするチュートリアル

目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...

MySQL データベースの基礎 SQL ウィンドウ関数の例の分析チュートリアル

目次導入導入集計関数 + over()ソート関数 + over() ntile() 関数 + ove...

純粋なCSSを使用してスクロールシャドウ効果を実現します

端的に言うと、スクロール可能な要素には非常によくある状況があります。通常、スクロールすると、要素が現...

リモートホスト上でスクリプトや命令を実行する Zabbix の詳細な説明

シナリオ要件1. zabbix_server Web インターフェースのスクリプト機能を使用すると、...

mysql インストーラ コミュニティ 8.0.16.0 のインストールと構成のグラフィック チュートリアル

mysqlインストーラコミュニティ8.0.16.0インストールグラフィックチュートリアル、参考までに...

Idea は、Web プロジェクトを開始するように Tomcat を設定します。グラフィック チュートリアル

tomcatの設定1. 実行構成をクリック 2. tomcat localを選択 3. tomcat...

LeetCode の SQL 実装 (183. 注文をしたことがない顧客)

[LeetCode] 183.注文しない顧客Web サイトに、Customers テーブルと Or...

表には表示したい境界コードが表示されます

テーブルの共通プロパティ基本的な属性は、width (幅)、height (高さ)、border (...

MySQLデータベースのタイムアウト設定を構成する方法の例

目次序文1. JDBCタイムアウト設定2. 接続プールのタイムアウト設定3. MyBatisクエリの...

Vue はシームレスなカルーセル効果 (マーキー) を実現します

この記事では、シームレスなカルーセル効果を実現するためのVueの具体的なコードを例として紹介します。...