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

MySQL regexpは、文字列または数値が混在する文字列を含むレコードのみを表示します。番号レコードのみを無視する


このために、REGEXPを使用できます。以下は構文です-

select yourColumnName from yourTableName where yourColumnName REGEXP '[a−zA&minu;Z]';

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

mysql> create table demo41
−> (
−> name varchar(40)
−> );
Query OK, 0 rows affected (0.64 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into demo41 values('John Smith34')
−> ;
Query OK, 1 row affected (0.13 sec)
mysql> insert into demo41 values('John Smith');
Query OK, 1 row affected (0.11 sec)
mysql> insert into demo41 values('9234John Smith');
Query OK, 1 row affected (0.14 sec)
mysql> insert into demo41 values('john smith');
Query OK, 1 row affected (0.23 sec)
mysql> insert into demo41 values('98775');
Query OK, 1 row affected (0.15 sec)

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

mysql> select *from demo41;

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

+----------------+
| name           |
+----------------+
| John Smith34   |
| John Smith     |
| 9234John Smith |
| john smith     |
| 98775          |
+----------------+
5 rows in set (0.00 sec)

以下は、MySQL正規表現のクエリです-

mysql> select name from demo41 where name REGEXP '[a−zA−Z]';

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

+----------------+
| name           |
+----------------+
| John Smith34   |
| John Smith     |
| 9234John Smith |
| john smith     |
+----------------+
4 rows in set (0.00 sec)

  1. 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

  2. MySQL REGEXPは、特定の数値で始まる文字列+数値レコードをフェッチしますか?

    これには、REGEXPを使用して、特定の番号で始まるレコードをフェッチします。構文は次のとおりです。 Select yourColumnName1,yourColumnName2 from yourTableName where yourColumnName2 REGEXP '^yourStringValue[yourNumericValue]'; テーブルを作成しましょう- mysql> create table demo45 -> ( −> id int not null auto_increment primary key, −