Structured Query Language
관계형 DB에서 데이터베이스를 핸들링하기 위한 "구조화된 쿼리 언어"
DB를 위한 명령어 그 무언가.
SQL이란?
Slide 3
Slide 3 text
개발자에게 물었습니다. 개발자가 답합니다.
Slide 4
Slide 4 text
Select from where
그럼 이것만 먹어봅시다.
Slide 5
Slide 5 text
약에 대한 설명
Slide 6
Slide 6 text
4FMFDU
GSPNDMBTTSPPN
우리 반에 학생들이 있다.
Slide 7
Slide 7 text
4FMFDUJEY
OBNF
GSPNDMBTTSPPN
학생들 번호랑 이름은?
Slide 8
Slide 8 text
4FMFDUOBNF
GSPNDMBTTSPPN
XIFSFOBNFMJLFrӣsIBWJOHCJSUIEBZCFUXFFOssBOEss
김씨성을 가진 아이들 중 생일이 11월인 친구는 이름은?
Slide 9
Slide 9 text
4FMFDUBIFJHIU
CBWFSBHF@HSBEF
GSPNIFBMUIB
HSBEFC
XIFSFBOBNFCOBNF
PSEFSCZBIFJHIU
키 순으로 평균성적을 나열하면?
Slide 10
Slide 10 text
수학을 100점 맞은 친구들의 평균 시력은?
4FMFDUBWFSBHF BFZFQPJOU
GSPNIFBMUIBMFGUPVUFSKPJOHSBEFCPOBOBNFCOBNF
XIFSFCNBUI
Slide 11
Slide 11 text
#
약의 효능
Slide 12
Slide 12 text
엑셀보다 크고 빠른 SQL
•엑셀은 좋은 데이터베이스입니다. 하지만 뭔가 부족해..
•열은 18,278 & 셀은 2,000,000
•열이 50개라면 40,000줄 밖에 안됨
•복잡한 비즈니스 로직을 답기엔 크기가 너무 작아요.
•엑셀 시트가 무거우면, 느리고 종종 쥬금. 스프레드시트는 더 하죠. 개복치도 아니고
Slide 13
Slide 13 text
엑셀보다 편한 SQL
• SQL은 상대좌표와 절대좌표의 계산을 할 필요가 없음. 쿼리에 맡겨!
•수식을 만드는 것만큼 들어갔던 Output에 대한 가공이 불필요해집니다.
•열 없애기, 행 감추기, 필터링 걸기, 정렬하기
•엑셀은 수식을 만든사람 말고는 이해하기 어렵잖아요?
Slide 14
Slide 14 text
생각보다 편한 보안
•공유하는 노트는 누구나 찾아볼 수 있으니까
•안쓰는 시트 감춰놓기, 수식에 손 못대게 잠굴 필요가 없어요.
•기본적인 권한관리는 데이터팀의 그라운드룰에 맡깁니다(drop table..)
Slide 15
Slide 15 text
누구나 쉽게 수정
•물론, 수정이 쉽다는 말은 아닙니다.
•엑셀시트는 구조 모르면 계산식이 깨지죠.
•쿼리는 상대적으로 수식 수정이 쉬운 편이라 반복적인 작업(날짜변경 등)에 수월해요.
•팀장이나 임원레벨에게도 제플린 노트 링크 던지는 싸가지없음 시전 가능합니다.
Slide 16
Slide 16 text
데이터베이스에 쉽게 접근
•개발자들이 DB에 대충 싸놓은 똥들을 생생하게 구경할 수 있어요
•차마 치우지 못하고 널부러놓은 레거시들을 발견할 수 있어요
•구조개선을 하는 기획/프로젝트를 진행할 때 엄청 큰 도움이 돼요.
•장님 코끼리 만지는 일이 사라지더라고요.
Slide 17
Slide 17 text
어드민 X, 제플린 O
•어드민에 없다고 데이터 없는거 아니더라
•대부분의 어드민은 자주 사용하는 필드만 있음 => 자주 사용하지 않는 데이터를 볼 수 있어요.
•대부분의 어드민은 페이징처리가 되어있음. => 많은 데이터는 한번에 보기 어려워요.
•대부분의 어드민은 xls, csv Export 를 지원하지 않음 => 이것도 개발해야하니까…
•제플린에서 실시간으로 볼 수 없어 아쉬울 때 있지만, 그것만으로도 충분해요.
Slide 18
Slide 18 text
Jira 이슈 만들필요 없음
•데이터 추출과 데이터 분석은 다른 것
•단순한 데이터추출 작업을 할당하고 기다릴 필요가 없어집니다.
•데이터가 필요하면 직접 추출하는 것 정도는 할 줄 알아야죠
•결과가 맘에 안들면 또 요청하고 요청하고… 개발자 반복작업 & 기획자 반복기다림을 없앱시다.
Slide 19
Slide 19 text
Postback 활용
•퍼포먼스 마케팅을 진행하며 쌓은 postback 데이터와 내부 데이터를 엮으면 뭔가 보여요!
•거시적이거나 or 미시적인관점에서의 유효한 타겟은 마케팅비용절감에 효과적!
Slide 20
Slide 20 text
팩트공격
•사용자 패턴을 분석해보다가 부족한게 눈에 보일테니, 구체적인 숫자로 요구할 수 있습니다.
•마찬가지로, 쓸데없는 요구사항에 대해 구체적인 숫자로 방어할 수도 있습니다.
Before After
공격할 때
푸시 동의를
더 받았으면 좋겠어요.
푸시 동의율이 4.5%인데 7%까지
올라갔으면 좋겠어요.
방어할 때
(신규가입이 왜 안느나요?)
회원가입률은 높다고 생각해요.
(사용성이 나쁜 것 아닌가요?)
회원전환율이 신규설치는 75%, 기존방문
자는 90%에요. 전환율이 낮지는 않으니
사용성 개선보다 마케팅을 더 하시죠.
Slide 21
Slide 21 text
연봉협상에 효과적
일거야…
•개발자의 성과측정 : 개발일정을 잘 지키거나(+), 버그를 양산하거나(-)
•개발자의 성과는 눈에 보인다. 그리고 코드를 뜯어보기 전에는 진짜로 잘했는지 검증하기가 어렵습니다.
•기획자/사업/마케터의 성과측정 : ???????
•비개발자는 많은 일을 많이하지만 티가 나지 않는다.
•서비스 개선 전/후의 데이터를 알고 있다면, 확실한 성과를 측정할 수 있다.
•연봉 안올려주면 이직할 때 써먹으세요 (야놀자는 지금 채용 중 )
Slide 22
Slide 22 text
%
복용시 주의사항
Slide 23
Slide 23 text
종합상비약을 챙겨두세요.
•SQL뉴비를 위한 얇은 책 한권사서 책상에 잘 보이는 곳에 두세요.
•한장 한장 필요할 때마다 사전삼아 찾아보는 것이 큰 도움이 됩니다.
•물론 실무에 적용하려면 잘 안될 때가 많습니다만…
저는 이 책 샀습니다.
Slide 24
Slide 24 text
1일 1회 복용하세요.
•비개발자에게는 익숙한 언어가 아니다보니, 하루라도 안쓰면 금방 까먹습니다.
•업무중에 따로 시간내기 어려우신 분들은 퇴근하기 전에 꼭 쿼리 한줄이라도 실행해보고 퇴근하세요.
•머리가 쿼리를 익히는 것보다 손이 쿼리를 익히는게 더 낫습니다. show me the money!
•datacamp.com 추천합니다.
저는 집에서 연습합니다.
Slide 25
Slide 25 text
다른 약이 있는지 둘러보세요.
•내가 짠 쿼리말고 다른 사람이 짠 쿼리를 뜯어보세요.
•특히 데이터팀이 짜놓은 노트는 훔쳐오기 아주 좋습니다.
•남들이 어떻게 사고하는지 아는 것은 늦게 시작하는 사람이 가장 빨리 날로 먹을 수 있는 방법입니다.
•But, 복붙도 실력입니다. 내 것을 만들어가세요.
Slide 26
Slide 26 text
(
복용의 부작용
Slide 27
Slide 27 text
입에 쓰다
•일하기도 바쁜데 공부까지 하라니 미칠 노릇이죠
•공부를 하겠다고 해서, 일이 줄어들진 않더라고요. 오히려 늘어남
•쉼표 하나, 오타 하나에 제대로 돌지 않는 쿼리들을 보며 한없이 멍청해짐을 느껴요.
Slide 28
Slide 28 text
보고서를 써야할 일이 늘어난다.
•감으로, 촉으로, 말로 때워서 넘어갔던 일들을 더 이상 할 수 없게 됩니다.
•잘했든, 못했든, 보고서에 정량적인 숫자를 써야할 일이 늘어납니다.
•그렇게 생각한 이유나 산출근거도 정리해야 합니다.
Slide 29
Slide 29 text
다른 팀 회의에 끌려간다.
•저는, 특히 데이터팀 회의에 자주 끌려갑니다.
•다 알아도 적당히 모른 척 하세요. 모르는 건 죄가 아닙니다.
Slide 30
Slide 30 text
)
그럼에도 불구하고
Slide 31
Slide 31 text
자기검증을 하며 성장하는 나
•추출이든, 분석이든 데이터를 보면서 가설을 세우고 검증하는 과정을 반복
•과거의 나를 부정하고, 현재의 나를 의심하며, 미래의 나를 계획하게 됩니다.
Slide 32
Slide 32 text
내 분야의 전문가는 나니까
•베테랑 낚시꾼이라고 모든 바다의 풍랑을 다 겪어본건 아니에요.
•데이터팀은 서비스의 모든 기능을 다 알지 못하며,
•데이터팀은 업데이트 되는 개선을 다 알지 못하며,
•데이터팀은 마케팅의 모든 비용을 다 알지 못한다.
•내가 보고 싶은 데이터를 데이터팀에 맡기면 딱 숫자로 보이는 만큼밖에 밖에 얻지 못해요.
•내가 보고 싶은 데이터는 직접 뽑을 줄 알아야 진짜 인사이트를 얻을 수 있어요.