드디어 4주차를 마친 기념으로 써본다. 비록 지금에와서 늦게 올리지만 암튼 기억나는데까지 올려본다.
핵심 키워드 : 서브쿼리, substring, when~end
서브쿼리의 경우 일단 쿼리 안의 쿼리라고 하는데 나는 그냥 마트료슈카(큰 인형 안에 작은 인형이 들어있는 인형)로 해석을 해버렸다....
when~end의 경우 when -> then -> else -> then -> 어쩌구저쩌구 -> end 이런 순으로 나오는데 이건 마치 C언어의 If~else if~else 이런식의 구문이나 switch 구문이 연상되었던 같다.
substring은 데이터중 일부를 분리하여 개인정보를 제3자가 볼수없도록 복자처리하는 데 유용하게 쓰일 수 있다고 한다.
예를 들어 아래 코드와 같이 작성할 경우 users 테이블에서 유저의 성씨 및 이메일의 도메인만 보이게 함으로써 나중에 유저 리스트를 작성할 때도 개인정보가 유출되는 것을 막을 수 있다고 한다. 다만 아래 코드의 경우 아이디가 일부라도 공개되어있지 않아 정작 실전에서 데이터를 정밀하게 선별해야할 때 어려움을 겪을 수 있을거 같다....
select SUBSTRING_INDEX(name, '*', 1) as family_name,
SUBSTRING_INDEX(email, '@', -1) as email_domain
from users
이번 리뷰는 문제를 해결하는게 아니라 문법 정리를 해볼건데요.
이번 SQL 과정은 SELECT를 사용해서 데이터를 검색하는 것을 중점적으로 진행했습니다.
키워드 | 기능 |
---|---|
SELECT | 데이터 검색 |
INSERT | 데이터 삽입 |
UPDATE | 데이터 수정 |
DELETE | 데이터 삭제 |
SELECT : DML의 일종으로 데이터를 검색하는데 사용
select * from member 👉 member 테이블에서 모든 속성을 검색함
P. S : 홈페이지 운영할 경우 SELECT뿐만 아니라 INSERT, DELETE, UPDATE 쿼리 등의 DML도 사용합니다. INSERT는 가입 DELETE는 탈퇴 UPDATE는 수정