본문 바로가기
개발일지/SQL

SQL 활용기초1

by 다니엘의 개발 이야기 2022. 6. 25.
320x100

# 중요예시
직업이 두개인 사람 중, 회계사 혹은 세무사 혹은 간호조무사가 아닌 사람 검색

# data_base_name에 있는 자료 모두를 가져온다.
SELECT * FROM data_base_name
# table_name에서 2가지 값을 가진 것만 가져온다. 그리고(+)
    -> WHERE table_name LIKE '%,%' AND

# 가 아닌것 (table_name안에 있는 것 중의 세무사나 회계사나 간호조무사)
    -> NOT (table_name LIKE '%세무사%' or table_name LIKE '%회계사%'or table_name LIKE '%간호조무사%');

# 약간 더 설명
# 이건 job_title이라는 테이블에 있는 2가지 값이 입력되어있는 조건을 출력해달라는 의미다.
# 반대로 생각하면, 1개의 데이터든, 3개이상의 데이터든, 이렇게 설정해주면 그냥 무시되는 값이다.
SELECT * FROM data_base_name WHERE job_title LIKE '%,%';

 

===========================================

# 주의점!!!

내가 찾고싶은게 '세무사'라고 할때, 중복직업 즉, 2개 이상의 직업을 가진사람이 세무사인 경우엔 조회를 할 수 없을 것이다.

왜냐하면 '세무사'라고 검색하면 딱, 세무사글자만 있는 job영역에서의 서치가 가능하기 때문이다.

따라서, 세무사가 포함되어있지만, 복수 직업의 경우를 고려했을때 세무사를 가진 직업을 찾기 원한다면 %세무사% 라고 해주는게 좋다. 그 이유는 %별로, 앞의 %는 앞에 글자가 어떤게 와도 괜찮다, 뒤의 %도 마찬가지로 뒤에 어떤 글자가 와도 괜찮다는 의미인데, 실질적으로 대량 데이터를 이용하고자 한다면 세무사라는 직업글씨가 앞에 있을지 뒤에있을지 모르기 때문이다.

300x250