1. 같지 않음 (!=, <>)
이전 영상에서는 '같음'을 나타내는 등호(=)를 배웠습니다. 그렇다면 '같지 않음'를 표현하려면 어떻게 해야할까요? != 기호나 <> 기호를 사용하면 됩니다. member 테이블의 회원들 중 남자가 '아닌' 회원들만 조회해보겠습니다. 일단 != 을 써볼게요.
남성이 아닌, 그러니까 여성 회원들만 잘 조회되었죠? 이번에는 <>를 써보겠습니다.
마찬가지로 ‘여성’ 회원들만 잘 조회되었습니다.
2. 이 중에 있는~ (IN)
이전 영상에서 우리는 어떤 범위를 나타내기 위해 사용하는 BETWEEN a AND b(a부터 b까지) 구문을 배웠습니다. 그런데 만약 이렇게 연속된 범위 말고, 여러 값들 중에서 해당하는 값이 있는 row들만 추려야할 때도 있는데요. 예를 들어, 현재 회원 중에서 나이가 딱 20살, 또는 딱 30살인 회원들만 조회하려면 어떻게 해야 할까요? 이렇게 써주면 됩니다.
지금 WHERE age IN (20, 30)은 age 컬럼의 값이 20이거나, 30이어야 한다는 조건을 의미합니다. 결과를 보니 잘 조회되었죠? 이 IN은 상당히 유용하게 사용되는 조건 표현식이니까 잘 기억해두세요.
3. 한 글자를 나타내는 _
이전 영상에서 문자열 패턴 매칭 조건을 배울 때 LIKE 뒤의 ‘%’는 임의의 길이를 가진 문자열(0자도 포함)을 나타낸다고 했습니다. 그런데 %말고 언더바(_) 하나 기호도 있는데요. LIKE 뒤의 언더바 하나는 문자 하나를 나타냅니다.
잠깐 member 테이블에서 이메일 주소가 c로 시작하고, 그 뒤에 여섯 글자가 있는 row들을 조회해볼까요?
지금 LIKE 뒤의 'c_____@%' 부분이 이해되시나요? 지금 언더바가 소문자 c 뒤에 5개가 있는 상태인데요. 이 표현식은 c로 시작하고, 그 뒤에 다섯 글자 그리고 골뱅이 하나, 그 뒤에 임의의 길이를 가진 문자열이 있는 문자열 패턴을 나타냅니다. 그리고 이 패턴에 해당하는 문자열인 codeit@naver.com과 cowboy@codeit.kr을 email 주소로 가진 회원들만 잘 조회됐습니다.
자, 앞으로는 더 다양한 방식으로 조건을 걸 수 있겠죠? SQL을 쓸 때는 조건 표현식 하나를 더 알고 모르느냐에 따라서 작업 효율이 천차만별로 달라집니다. 이때까지 배운 표현식들은 모두 암기하고 사용할 수 있도록 하세요.
'데이터베이스 > MySQL' 카테고리의 다른 글
이스케이핑 (0) | 2022.01.22 |
---|---|
DATE 데이터 타입 관련 함수 (0) | 2022.01.22 |
SQL 작성형식 4가지 (0) | 2022.01.22 |
MySQl 설치방법 (0) | 2022.01.22 |
SQL 국제 표준과 MySQL (0) | 2022.01.22 |