본문 바로가기

프로그래밍 강의 메모/갖고노는 MySQL 데이터베이스 by 얄코

SELECT 기초 > 각종 연산자들

https://inf.run/maQC

 

갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의

비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런...

www.inflearn.com

사칙연산에서 복습이 필요한 내용

문자열에 사칙연산을 가하면 0으로 인식

-- 'ABC'를 0으로 인식하여 3 출력
SELECT 'ABC' + 3;

숫자로 구성된 문자열은 숫자로 자동인식

-- 문자열 '1' '002'를 숫자로 인식하여 7 출력
SELECT '1' + '002' * 3;

참/거짓 관련 연산자에서 복습이 필요한 내용

연산자 의미
BETWEEN {MIN} AND {MAX} 두 값 사이에 있음
NOT BETWEEN {MIN} AND {MAX} 두 값 사이가 아닌 곳에 있음
-- MySQL의 기본 사칙연산자는 대소문자 구분을 하지 않는다
-- 그래서 'banana'는 'Apple' 과 'camera' 사이에 있기 때문에
-- 거짓이 되어 0을 출력한다.
SELECT 'banana' NOT BETWEEN 'Apple' AND 'camera';

 

 

 

연산자 의미
LIKE '... % ...' 0~N개 문자를 가진 패턴
LIKE '... _ ...' _ 갯수만큼의 문자를 가진 패턴
SELECT
  'HELLO' LIKE 'hel%',		-- TRUE
  'HELLO' LIKE 'H%',		-- TRUE
  'HELLO' LIKE 'H%O',		-- TRUE
  'HELLO' LIKE '%O',		-- TRUE
  'HELLO' LIKE '%HELLO%',	-- TRUE
  'HELLO' LIKE '%H',		-- FALSE
  'HELLO' LIKE 'L%'		-- FALSE
SELECT
  'HELLO' LIKE 'HEL__',		-- TRUE
  'HELLO' LIKE 'h___O',		-- TRUE
  'HELLO' LIKE 'HE_LO',		-- TRUE
  'HELLO' LIKE '_____',		-- TRUE
  'HELLO' LIKE '_HELLO',	-- FALSE
  'HELLO' LIKE 'HEL_',		-- FALSE
  'HELLO' LIKE 'H_O'		-- FALSE

연산자 복습용

연산자 의미
+-*/ 각각 더하기, 빼기, 곱하기, 나누기
%MOD 나머지
IS 양쪽이 모두 TRUE 또는 FALSE
IS NOT 한쪽은 TRUE, 한쪽은 FALSE
AND&& 양쪽이 모두 TRUE일 때만 TRUE
OR|| 한쪽은 TRUE면 TRUE
= 양쪽 값이 같음
!=<> 양쪽 값이 다름
>< (왼쪽, 오른쪽) 값이 더 큼
>=<= (왼쪽, 오른쪽) 값이 같거나 더 큼
BETWEEN {MIN} AND {MAX} 두 값 사이에 있음
NOT BETWEEN {MIN} AND {MAX} 두 값 사이가 아닌 곳에 있음
IN (...) 괄호 안의 값들 가운데 있음
NOT IN (...) 괄호 안의 값들 가운데 없음
LIKE '... % ...' 0~N개 문자를 가진 패턴
LIKE '... _ ...' _ 갯수만큼의 문자를 가진 패턴