Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

RUBY

[220608] SQLD _ 12. SELECT_FROM_WHERE 본문

자격증/SQL 개발자

[220608] SQLD _ 12. SELECT_FROM_WHERE

ruby-jieun 2022. 6. 8. 11:39

 

WHERE

 

- 특정한 조건의 데이터만 조회한다.

SELECT 필드이름 FROM 테이블이름 WHERE 조건식;

 

- WHERE 조건 없이 조회하면 전체 데이터가 조회되기에, 수백 수천만건이 조회될 수도 있다.

SELECT 필드이름 FROM 테이블이름;

 

- WHERE 조건 추가 후 조회해보기

SELECT * FROM user WHERE user_id = 'ruby';

 

 

 

관계 연산자의 사용

 

 

AND

 

1994년 이후에 출생하고, 신장이 160 이상인 사람의 아이디와 이름을 조회해보자.

SELECT userID, userName FROM userTBL WHERE birthYear >= 1994 AND height >= 160;

 

 

 

OR

 

1994년 이후에 출생했거나, 신장이 160 이상인 사람의 아이디와 이름을 조회해보자.

SELECT userID, userName FROM userTBL WHERE birthYear >= 1994 OR height >=160;

 

 

 

BETWEEN

 

키가 160~165인 사람을 조회한다면?

 

SELECT userName, height FROM userTBL WHERE height >= 160 AND height <=165;

  AND만을 사용하면 이렇게 검색할 수 있다.

 

SELECT userName, height FROM userTBL WHERE height BETWEEN 160 AND 165;

  BETWEEN AND를 사용하면 이렇게 검색할 수 있다.

 

 

 

IN()

 

주소가 '성동구', '동대문구', '강남구' 인 사람의 정보를 조회한다면?

 

SELECT userName, addr FROM userTBL WHERE addr='성동구' or addr='동대문구' or addr='강남구';

  → OR을 사용하면 이렇게 검색할 수 있다.

 

SELECT userName, addr FROM userTBL WHERE addr IN ('성동구', '동대문구', '강남구');

  IN을 활용하면 이렇게 검색할 수 있다.

 

 

 

LIKE

 

문자열의 내용을 검색한다.

 

SELECT userName FROM userTBL WHERE userName LIKE '김%';

  → 위의 조건은 성이 '김'씨이고 그 뒤는 무엇이든(%) 허용한다는 의미다.

 

SELECT userName FROM userTBL WHERE userName LIKE '김지_';

  → 위의 조건은 이름이 '김지'로 시작하고 그 뒤는 무엇이든(_) 추출해온다는 의미다.

  → 언더바 (_)의 갯수만큼 글자수를 추출해온다.

 

SELECT userName FORM userTBL WHERE userName LIKE '_%';

  → 위처럼 (%)(_)를 조합해서 사용할 수 있다.

  → 위의 조건은 1번째 글자에 (_)아무거나 한 글자가 오고

       2번째 글자에 '지'가 오고

       3번째 이후에는 (%)몇 글자든 아무거나 오는 값을 추출해온다는 의미이다.

  → ex) 김지은, 아지랑이, 오지그릇장수 등

 

 

 

 

 

 

Comments