이진은 함수, 형식 변환 연산자 이며 문자열을 비교할 때 대/소문자 구분 수를 이해할 수 있는 이진 문자열을 뒤에 문자열을 강제로 사용 됩니다.
다음:
mysql > 선택 이진 'abcd' 'abcd' COM1 'abcd' = = 'abcd' COM2;
+--------+-----------+
| COM1 | COM2 |
+--------+-----------+
| 0 | 1 |
+---------+-----------+
설정 (0.00 초)에 1 행
____________________________________________________________
(그냥 몇 가지!) 4.* 전)
중국 검색 하기 전에 특정 4.*에 일부 MySQL 질문이 부정확 한 것 이다, 때문에 검색할 때 이진 파일을 추가할 수 있습니다.
테이블을 작성:
테이블 Usertest (
ID Int (9) 서명 하지 NULL auto_increment
사용자 이름 varchar not NULL 기본 ',
기본 키 (ID)
)
데이터를 삽입 합니다.
Usertest (사용자 이름)에 삽입 값 ('미국 텍스트');
Usertest (사용자 이름)으로 삽입 값 ('우리 프로젝트');
Usertest (사용자 이름)에 삽입 값 ('레빈');
Usertest (사용자 이름)에 삽입 값 (' 오래 된 탕 ');
Usertest (사용자 이름)에 삽입 값 ('꿈 드리프트');
Usertest (사용자 이름)에 삽입 값 (' 드래곤 무술 ');
Usertest (사용자 이름)에 삽입 값 ('여름');
예: 선택 * 사용자 이름 '% 여름'을 같은 usertest, 7 레코드의 결과, 더 우울.
사용 하는 경우 처럼, 선택 대신 = * usertest에서 어디 사용자 이름 = '여름' 표시 한 결과. MySQL의 같은 작업에 따라 ASCII, 운영 하기 때문에 그것 수 있습니다 문제가 될 때 처럼. 문제가 계속: 추가 하는 경우:
Usertest (사용자 이름)에 삽입 값 ('웬');
Usertest (사용자 이름)에 삽입 값 ('돈');
선택 사용 하 여 또는 * usertest에서 어디 사용자 이름 = '여름', 결과 여전히 3 기록, 그리고 우울. 솔루션은 다음과 같습니다.
1. 이진 쿼리에 추가 하는 경우에 없습니다 그것을 만들 때 사용 합니다.
사용자 이름 varchar () 바이너리 하지 NULL 기본 ' 테이블은 이미 구축 하 고, 사용:
ALTER TABLE usertest 수정 사용자 이름 varchar 이진; 하는 테이블의 속성입니다.
2. 이진 파일 추가 선택 * 사용자 이름 이진을 같은 Usertest에서 '여름 %' 정확한 쿼리 기록을 만들기 위해 쿼리.