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

MySQL 테이블에서 모든 대문자 문자열을 찾는 방법은 무엇입니까?

<시간/>

MySQL 테이블에서 모든 대문자 문자열을 찾으려면 BINARY UPPER() 함수를 사용해야 합니다. 구문은 다음과 같습니다.

SELECT *FROM yourTableName WHERE yourColumnName=BINARY UPPER(yourColumnName);

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

mysql> create table FindUpperCaseDemo
   -> (
   -> Id int,
   -> FirstName varchar(20),
   -> Age int
   -> );
Query OK, 0 rows affected (1.04 sec)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다.

mysql> insert into FindUpperCaseDemo values(1,'John',23);
Query OK, 1 row affected (0.17 sec)
mysql> insert into FindUpperCaseDemo values(2,'CAROL',21);
Query OK, 1 row affected (0.29 sec)
mysql> insert into FindUpperCaseDemo values(3,'JoHN',23);
Query OK, 1 row affected (0.11 sec)
mysql> insert into FindUpperCaseDemo values(4,'JOHN',26);
Query OK, 1 row affected (0.22 sec)
mysql> insert into FindUpperCaseDemo values(5,'sAM',26);
Query OK, 1 row affected (0.18 sec)
mysql> insert into FindUpperCaseDemo values(6,'SAM',28);
Query OK, 1 row affected (0.18 sec)
mysql> insert into FindUpperCaseDemo values(7,'MIKE',29);
Query OK, 1 row affected (0.17 sec)
mysql> insert into FindUpperCaseDemo values(8,'BOB',20);
Query OK, 1 row affected (0.45 sec)
mysql> insert into FindUpperCaseDemo values(9,'LARRY',22);
Query OK, 1 row affected (0.39 sec)
mysql> insert into FindUpperCaseDemo values(10,'LARRy',22);
Query OK, 1 row affected (0.14 sec)

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

mysql> select *from FindUpperCaseDemo;

다음은 출력입니다.

+------+-----------+------+
| Id   | FirstName | Age  |
+------+-----------+------+
|    1 | John      |   23 |
|    2 | CAROL     |   21 |
|    3 | JoHN      |   23 |
|    4 | JOHN      |   26 |
|    5 | sAM       |   26 |
|    6 | SAM       |   28 |
|    7 | MIKE      |   29 |
|    8 | BOB       |   20 |
|    9 | LARRY     |   22 |
|   10 | LARRy     |   22 |
+------+-----------+------+
10 rows in set (0.00 sec)

다음은 MySQL 테이블에서 모든 대문자 문자열을 찾는 쿼리입니다.

mysql> select *from FindUpperCaseDemo where FirstName=BINARY UPPER(FirstName);

다음은 출력입니다.

+------+-----------+------+
| Id   | FirstName | Age  |
+------+-----------+------+
|    2 | CAROL     |   21 |
|    4 | JOHN      |   26 |
|    6 | SAM       |   28 |
|    7 | MIKE      |   29 |
|    8 | BOB       |   20 |
|    9 | LARRY     |   22 |
+------+-----------+------+
6 rows in set (0.09 sec)