테스트 사이트 - 개발 중인 베타 버전입니다

MySQL 내부연산 ( 비교연산 )

· 20년 전 · 6144
비교연산

- 비교연산의 결과값은 1(TRUE), 0(FALSE), 또는 NULL 을 반환한다. 비교연산은 숫자와 문자열 모두에서 가능하다. 필요에 따라 자동적으로 숫자로 또는 문자열로 변환된다.
- 두개의 인자 모두가 NULL 일 경우 연산의 결과값은 NULL 이 된다.
- 두개의 인자 모두가 문자열이면 문자열로 비교된다.
- 두개의 인자 모두가 숫자이면 숫자로서 비교된다.
- 16진수는 숫자와 연산하지 않을 경우 바이너리로 처리된다.
- 다른 대부분의 경우 연산은 floating-point 로 된다.
- 기본적으로, 문자열 비교는 대소문자구분을 하지 않는다.
예 : select * from tbl_a where (a > 0) and (b <= 1);



- expr BETWEEN min AND max
- 예 : select 2 BETWEEN 2 AND '3';



- expr IN (value,...)
- 예 : select 'wefwf' IN (0,3,5,'wefwf');



- expr NOT IN (value,...)



- ISNULL(expr) : NULL 일 경우만 1(TRUE) 를 반환한다.
- 예 : select ISNULL(1+1);



- COALESCE(list) : NULL 이 아닌 첫번째 인자를 반환한다.
- 예 : select COALESCE(2, ',한글', NULL, 1);



- expr [NOT] REGEXP pat : 쿼리에서 정규표현식을 사용할수 있다. 사용할수 있다. 이것에 대해서는 나중에 설명한다.



- expr RLIKE pat : REGEXP 와 같다.



- STRCMP(expr1,expr2) : 두개의 문자열이 동일할경우 0, 첫번째 문자열이 정렬에서 상위일경우 -1, 그렇지 않으면 1을 반환한다.



= 같다 값 = 4
> 보다크다 값 > 60
< 보다작다 값 < 60
>= 크거나 같다 값 >= 60
<= 작거나 같다 값 <= 60
!= 혹은 <> 같지 않다 값 != 0
IS NOT NULL NULL을 가지지 않는다.
IS NULL NULL 이다.
BETWEEN 0에서 60 사이의 값
IN 어느 집합에 있는가
NOT IN 어느 집합에 있지 않은가
NOT IN LIKE 패턴대응 name like("값%")
NOT LIKE 패턴대응 name not like("값%")
REGEXP 정규표현 name regexp<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
200
199
198
197
196
195
194
191
190
188
183
182
181
180
179
178
177
176
175
174
173
171
166
165
164
161
160
159
158
157