본문 바로가기
코드스테이츠 PM과정

PM을 위한 SQL 공부하기 좋은 사이트(W3schools)

by 관점부자 2021. 5. 26.

PM이 되기위해 중요한 역량 중 하나인 데이터 분석 능력을 5주차부터 배우기 시작했다.

 

PM에게 있어서 데이터란 유일한 나침반 같다는 생각을 했다.

가설을 세우고 이를 개발자와 디자이너와 데이터 엔지니어(내가 가는 곳에 있었으면 좋겠다..)

들과 제품 성장을 위해 KPI를 잡고, 이에 맞는 세부 계획을 진행하는데, 그 과정은 팀원들과 상의 할 수 있지만,

그 방향성은 PM이 데이터를 보고 스스로 판단해야한다.

 

시키는 사람 입장에서는

데이터에 나와있잖아
데이터로 의사결정한다.
데이터를 활용해서 알아봐봐

 이게 참 쉬운말인데,

 

하고 있는 실무자입장에서는

무슨 데이터를 봐야하지?
잘못 뽑은 데이터로 의사결정이 되면 어떡하지?
이 데이터는 누구한테 물어봐야하지?

등등의 물음표 폭탄을 안겨준다.

 

그래서 더 더욱 이 과정에서 열심히 배워야겠다는 생각을 하고 있었다!(일단 마음 먹는게 중요하니까)

그리고 "칼퇴족 김대리는 알고 나만 모르는 SQL"책도 봤다. 그리고 오늘 수업을 들으면서 W3schools

 

SQL Tutorial

SQL Tutorial SQL is a standard language for storing, manipulating and retrieving data in databases. Our SQL tutorial will teach you how to use SQL in: MySQL, SQL Server, MS Access, Oracle, Sybase, Informix, Postgres, and other database systems. Start learn

www.w3schools.com

SQL을 비롯한 다양한 프로그래밍 언어를 연습할 수 있는 플랫폼도 소개 받았다.

 


그리고 학생들을 생각하는 마음이 가득 담기신 강사님의 숙제는 W3school 데이터를  선정하여 DB Schema를 짜보라고 하셨다. DB 스키마(Schema)는 주로 개발자들이 DB(데이터 베이스)를 만들 때 사용하는 설계도인데,

PM도 역시 검색과 갱신의 효율화를 위해 이를 만들진 않지만, 이해하고 있어야 한다.

 

데이터 베이스는 좀 더 구체적으로 말하면 자료의 검색과 갱신을 위해 논리적으로 연결된 하나 이상의 구조화 된 자료 저장소라고 보면 좋다.

여전히 추상적인 설명이지만, 우리가 흔히 웹사이트에서 볼 수 있는 모든 정보가 DB 즉,데이터베이스 영역에 포함된다고 생각하면 된다. 

ex) 회원정보, 상품정보, 게시판, 입출금 정보 등등

 

이런 데이터 베이스에서 기획자는 검색과 갱신의 효율화를 위해 무엇을 해야할까?에 대한 질문을 하고 검색해서 찾았다.

즉, 안정적인 서비스 구축을 위해 기획자가 정의해야할 것은 무엇인가에 대한 고민이었다.

1) 효율적인 데이터베이스의 설계를 위한 데이터의 수집범위를 정의하는 것
2) 수집한 데이터를 어떻게 운용할 것인가에 대한 운용, 관리정책의 수립

출처: https://www.yamestyle.com/137 [야메의 이상한 생각과 공감]

 

라는 걸 야메님 덕에 알게 되었다.
그래서 그런지 코드스테이츠 강사님도 DB Schema를 짤 줄 알아야 된다고 생각하셔서, 먼저 W3school의 데이터를 통해 Schema를 짜보라는 과제를 주신거 같다. 그래서 나는 29개의 레코즈를 가지고  DB Schema와 SQL 문장 3개를 만들어 보았다.

W3school의 Suppliers 데이터

 

 

이를 바탕으로 나는 대륙별 공급회사 갯수와 회사 이름, 연락처를 알아보고 싶어서, 아래와 같이 DB Schema를 짜봤다.

대륙별 DB Schema SQL 사용전
SQL을 활용하여 나라별 공급사와 연락처 구분

 

활용한 SQL 문장

 

in/ not in : 해당 텍스트가 있는 열 정보 보여주기

America 대륙에 속한 공급사와 연락할 이름 알아보기 

SELECT SupplierName, Country FROM [Suppliers] 
where country in ("USA", "Canada", "Brazil") 

 

Europe 대륙에 속한 공급사와 연락할 이름 알아보기

SELECT SupplierName, Country, contactName FROM [Suppliers] 
where country not in ("Japan", "Australia", "Singapore", "USA", "Canada", "Brazil") 

 

Asia 대륙에 속한 공급사와 연락할 이름 알아기보기

SELECT SupplierName, Country FROM [Suppliers] 
where country in ("Japan", "Singapore") 

 

like 'a%a'  : 첫 a와 끝 a를 포함하는 모든 텍스틀 찾아준다.

Oceania 대륙에 속한 공급사와 연락할 이름 알아보기

SELECT suppliername, country, contactName FROM [Suppliers] 
where country like 'a%a'

 

 

느낀점:

SQL문법을 아는 것도 중요한데, 무슨 자료 혹은 지표를 만들고 싶은지 목적을 생각하는게 중요하고, 그 다음에는 어떤 조작어를 써서 데이터를 추출하는도 중요한거 같다. 그리고 생각보다 도표에 시간이 오래걸렸다. 이래서 기획하는데 시간이 많이 드는 거 같다.