💾 Data/SQL

[SQL] 데이터 검색하기

heywantodo 2023. 3. 23. 20:25
728x90
반응형

테이블에서 데이터 검색하기 : SELECT

테이블에 있는 데이터를 조회하는 명령어

ex) 책 정보를 저장하는 book 테이블에 저장된 모든 데이터 검색

SELECT * FROM book;

 

✔ 만약 중복을 제거하고 조회를 하고 싶다면?

 

중복제거 : DISTINCT

뒤에 나오는 컬럼의 중복을 제거하고 보여줌

뒤에 2개 이상의 컬럼을 적으면, 한 쪽 컬럼에 중복이 있어도 다른 쪽 컬럼의 값이 다르면 다르게 취급

SELECT DISTINCT title, author FROM book;

 

✔ 검색 조건을 추가하고 싶다면?

 

조건을 추가해서 검색 : WHERE

검색하고자 하는 데이터의 조건을 설정할 수 있는 명령

SELECT * FROM book
WHERE title = '돈키호테';

 

🔎 여러 연산자를 사용해서 조건을 추가 할 수 있음

  • 비교 연산자
연산자 의미
>, < N이 n 미만 N이 n 초과
≥, ≤ N이 n 이하 N이 n 이상
= N이 n인 값
N이 n이 아닌 값
  • 복합조건 연산자
연산자 의미
AND, && A 그리고 B를 모두 만족하는 값
OR, || A 또는 B인 값
NOT, ! A가 아닌 값
  • 기타 연산자
연산자 의미
BETWEEN A BETWEEN a AND b A가 a와 b 사이에 포함된 값
IN A IN B B에 A가 포함된 값
NOT IN A NOT IN B B에 A가 포함되지 않은 값

 

✔ 테이블에서 유사한 값을 찾고 싶다면? 

 

테이블에서 유사한 값 찾기 : LIKE

특정 문자가 포함된 문자열을 찾고 싶을 때 사용하는 명령

SELECT * FROM book
WHERE title LIKE '어린왕자';

ex) 테이블에서 제목이 ‘왕자’로 끝나는 책 검색

SELECT * FROM book
WHERE title LIKE '%왕자';

ex) 테이블에서 제목이 ‘어린’으로 시작하는 책 검색

SELECT * FROM book
WHERE title LIKE '어린%'';

ex) 테이블에서 제목에 ‘린왕’이 포함되는 책 검색

SELECT * FROM book
WHERE title LIKE '%린왕%';

 

✔ 데이터를 오름차순 또는 내림차순으로 정렬하여 검색하고 싶을 땐?

 

데이터 정렬하기 : ORDER BY

데이터를 검색할 때 정렬하여 결과를 출력하는 명령

  • ASC = 오름차순 (작은 값 부터)
  • DESC = 내림차순 (큰 값 부터)
SELECT * FROM SCORE
ORDER BY math DESC;

 

728x90
반응형