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)
-
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
-
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, −