MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL REGEXP句の括弧をエスケープして、括弧付きの特定の値のみを表示するにはどうすればよいですか?


まずテーブルを作成しましょう-

mysql> create table DemoTable1908
   (
   Code text
   );
Query OK, 0 rows affected (0.00 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1908 values('MySQL(1)Database');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1908 values('MongoDB 2 Database');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1908 values('MySQL(3)Database');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1908 values('SQL Server(10)Database');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1908 values('MySQL 8 Database');
Query OK, 1 row affected (0.00 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select * from DemoTable1908;

これにより、次の出力が生成されます-

+------------------------+
| Code                   |
+------------------------+
| MySQL(1)Database       |
| MongoDB 2 Database     |
| MySQL(3)Database       |
| SQL Server(10)Database |
| MySQL 8 Database       |
+------------------------+
5 rows in set (0.00 sec)

これは、REGEXP句の括弧をエスケープし、()-

を使用して括弧の値のみを表示するためのクエリです。
mysql> select * from DemoTable1908 where Code regexp '^MySQL[(][0-9][)]Database';

これにより、次の出力が生成されます-

+------------------+
| Code             |
+------------------+
| MySQL(1)Database |
| MySQL(3)Database |
+------------------+
2 rows in set (0.00 sec)

  1. JDBCを使用してMySQLでバックスラッシュをエスケープする方法は?

    バックスラッシュをエスケープするには、レコードを挿入するときにPreparedStatementを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1904    (    ClientId int,    ClientName varchar(20),    ClientAge int    ); Query OK, 0 rows affected (0.00 sec) Javaコードは次のとおりです- import java.sql

  2. MySQLではIN句内に指定された値のみを表示しますか?

    このために、ORDER BY句とともにIN()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1986    (    Number int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1986 values(50); Query OK, 1 row affected (0.00 sec) mysql