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

単一のMySQLクエリで「LIKE」と「IN」を実装できますか?


効率を上げるには、同じタスクに正規表現を使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable
   -> (
   -> Name varchar(30)
   -> );
Query OK, 0 rows affected (0.62 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('John');
Query OK, 1 row affected (0.13 sec)

mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values('Robert');
Query OK, 1 row affected (0.16 sec)

mysql> insert into DemoTable values('David');
Query OK, 1 row affected (0.17 sec)

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

mysql> select *from DemoTable;

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

+--------+
| Name   |
+--------+
| John   |
| Chris  |
| Robert |
| David  |
+--------+
4 rows in set (0.00 sec)

これは、LIKEおよびINの代替としてREGEXPを実装するためのクエリです-

mysql> select *from DemoTable where Name REGEXP 'John|Robert|David';

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

+--------+
| Name   |
+--------+
| John   |
| Robert |
| David  |
+--------+
3 rows in set (0.11 sec)

  1. 最初の値にラップアラウンドし、MySQL ORDERBYASCとDESCを単一のクエリで実装します

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value int    -> ); Query OK, 0 rows affected (3.21 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(20); Query OK, 1 row affected (0.78 sec) mysql> insert into Demo

  2. 単一のMySQLクエリでSELECTLIKEとCHAR_LENGTH()を実装する

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.49 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Chris Brown'); Query OK, 1 row affected (0.19 sec)