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

MySQL 열에서 문자열의 왼쪽과 중간 부분에서 '%' 문자를 이스케이프하는 방법은 무엇입니까?

<시간/>

먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable629 (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,StudentSubject text);
Query OK, 0 rows affected (0.77 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable629(StudentSubject) values('MySQL%');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable629(StudentSubject) values('Spring%Hibernate');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable629(StudentSubject) values('%Java');
Query OK, 1 row affected (0.21 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable629;

이것은 다음과 같은 출력을 생성합니다 -

+-----------+------------------+
| StudentId | StudentSubject   |
+-----------+------------------+
|         1 | MySQL%           |
|         2 | Spring%Hibernate |
|         3 | %Java            |
+-----------+------------------+
3 rows in set (0.00 sec)

다음은 '%' 문자를 이스케이프하는 쿼리입니다. -

mysql> select *from DemoTable629
   where StudentSubject like '%\%';

이것은 다음과 같은 출력을 생성합니다 -

+-----------+----------------+
| StudentId | StudentSubject |
+-----------+----------------+
|         1 | MySQL%         |
+-----------+----------------+
1 row in set (0.00 sec)