Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySql에서 LIKE와 OR을 함께 사용할 수 있습니까?


IN 연산자와 동일하게 작동하는 OR 연산자와 함께 LIKE를 사용할 수 있습니다.

두 경우 모두에 대한 구문을 살펴보겠습니다 -

사례 1 - OR 연산자와 함께 Like 사용

select *from yourTableName where yourColumnName Like ‘Value1’
or yourColumnName Like ‘Value2’
or yourColumnName Like ‘Value3’
.
.
.
N

사례 2 - IN 연산자 사용

select *from yourTableName where IN(value1,value2,value3,.....N);

두 구문을 모두 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table LikeDemo
−> (
−> Id varchar(20)
−> );
Query OK, 0 rows affected (0.58 sec)

이제 insert 문을 사용하여 테이블에 레코드를 삽입할 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> insert into LikeDemo values('John123');
Query OK, 1 row affected (0.22 sec)

mysql> insert into LikeDemo values('Smith205');
Query OK, 1 row affected (0.18 sec)

mysql> insert into LikeDemo values('Bob999');
Query OK, 1 row affected (0.18 sec)

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

mysql> insert into LikeDemo values('Johnson2222');
Query OK, 1 row affected (0.15 sec)

mysql> insert into LikeDemo values('David2345');
Query OK, 1 row affected (0.21 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다 -

mysql> select *from LikeDemo;

다음은 출력입니다 -

+-------------+
| Id          |
+-------------+
| John123     |
| Smith205    |
| Bob999      |
| Carol9091   |
| Johnson2222 |
| David2345   |
+-------------+
6 rows in set (0.00 sec)

다음은 OR 연산자 −

와 함께 단일 Like를 사용하는 쿼리입니다.

사례 1 - OR 연산자와 함께 Like 사용

mysql> select *from LikeDemo where Id Like 'John123%' or Id Like 'Carol9091%' or Id Like 'David2345%';

다음은 출력입니다 -

+-----------+
| Id        |
+-----------+
| John123   |
| Carol9091 |
| David2345 |
+-----------+
3 rows in set (0.00 sec)

사례 2 - IN 연산자 사용

쿼리는 다음과 같습니다 -

mysql> select *from LikeDemo where Id in('John123','Carol9091', 'David2345');

다음은 출력입니다 -

+-----------+
| Id        |
+-----------+
| John123   |
| Carol9091 |
| David2345 |
+-----------+
3 rows in set (0.04 sec)