본문 바로가기

쿼리

[SQL 예문] 브랜드별 판매수량, 금액 구하기 (feat. JOIN) 우리 회사 DB 구조 상, 브랜드별 판매수량, 금액을 추출하기 위해서는 세 테이블을 조인 해야한다. ITEM 테이블 , CART 테이블, ORDER 테이블 왜 이렇게 세개가 필요하냐면, CART 와 ORDER 테이블엔 BRAND 명 칼럼이 없음 ORDER 테이블엔 주문번호별 총주문금액은 있어도 한 주문번호 안에 어떤 상품들을 담았는지는 없음 그건 CART테이블에 데이터 존재 ITEM 테이블에 BRAND 명 칼럼 존재. CART 테이블에 상품별 판매수량, 금액 칼럼 존재 ORDER 테이블에 주문번호 (od_id), 결제일시 (od_receipt_time) 칼럼 존재 우선 ORDER 테이블과 CART 테이블을 주문번호 (od_id) 를 key 로 해서 JOIN 한다. 이렇게 JOIN 한 결과와 ITEM 테이.. 2022. 3. 18.
[MySQL] 뷰 (VIEW) 만들기 뷰 : 조인 등의 작업을 해서 만든 '결과 테이블' 이 가상으로 저장된 형태 일시적으로 생성한 결과 테이블을 저장해둔 것 뷰(VIEW)는 가상테이블이라고도 한다. #AS 뒤에 나오는 쿼리문의 결과 테이블을 VIEW 로 저장하라 CREATE VIEW three_tables_joined AS SELECT i.id, i.name, AVG(star) AS avg_star, COUNT(*) AS count_star FROM item AS i LEFT OUTER JOIN review AS r ON r.item_id = i.id LEFT OUTER JOIN member AS m ON r.mem_id = m.id WHERE m.gender = 'f' GROUP BY i.id, i.name HAVING COUNT(*) .. 2022. 2. 1.
[MySQL] 컬럼 이름 바꿔서 보여주기 Alias (AS) 컬럼 이름 바꿔서 보여주는 것을 Alias (별명) 라고 한다. 컬럼명이 height 인데 보여줄 때 '키' 라는 단어로 보여주고 싶다면 AS 를 사용해서 명명 해주면 된다. AS 로 컬럼 Alias(별명) 붙여주기 SELECT email, height AS 키, weight AS 몸무게, weight / (height/100) * (height/100) AS BMI FROM member; (참고 : 칼럼끼리 계산은 + 더하기 - 빼기 * 곱하기 / 나누기 % 나머지 구하기 이렇게 가능) Alias 에 공백이 포함되면 작은 따옴표로 감싸줘야한다. SELECT email, height AS 키, weight AS 몸무게, weight / (height/100) * (height/100) AS 'BMI 지수.. 2022. 1. 26.
[MySQL] NULL 이 있는 로우 조회하기 NULL 은 값이 없음을 나타내는 단어다. 데이터 테이블에 값이 없는 로우가 있을 수 있다. 회원 가입할 때 선택 값으로 넣어둔 항목들은 유저가 회원 가입시 빈 값으로 두고 넘어 갈 수 있기 때문에 그 부분은 NULL 이 된다. 데이터 추출 시 NULL 인 부분들을 조회 하고 싶을 때 어떻게 조회 하는지 알아보자 IS NULL NULL 인 로우 조회 # member 테이블에서 address 칼럼이 NULL 로우들 조회 SELECT * FROM member WHERE address IS NULL; IS NOT NULL NULL 이 아닌 로우 조회 # member 테이블에서 address 칼럼이 NULL 이 아닌, 값이 있는 로우들만 조회 SELECT * FROM member WHERE address IS .. 2022. 1. 26.
[구글 스프레드시트] SQL Query문을 구글스프레드 시트에서~ 구글 스프레드시트에서 를 통해 SQL 쿼리문과 같은 기능을 사용할 수 있다. query 함수는 아래와 같이 사용. = query(사용할 데이터 범위 설정, 쿼리문) 필자는 SQL문을 어디에 사용했느냐, 매주 상품별로 발주를 넣는데, 100개가 넘는 브랜드 중 팀원마다 맡은 브랜드가 있다. 각 팀원별로 맡은 브랜드만 확인하면 되니까 Query 함수를 써서 해당 브랜드만 각 담당자별 시트탭에 데이터를 뿌려줬다. ↓실제 시트 화면↓ 우선 상품별로 발주가 필요한지 여부를 체크해 주는 '상태부여' 탭을 만들고 (한달 동안 판매된 수량과 재고 수량 비교하여 발주할 수량 정해줌) 각 담당자들 탭에 query 문으로 데이터 뿌려주기 =QUERY('상태 부여'!A2:I,"select * where B='에뛰드 하우스' .. 2021. 5. 14.
[sql + 엑셀함수] 데이터 정제하기 안녕하세요! 종종 팀장님께서 급 '사내 솔루션 팀별 사용량을 알려줘!' '한달동안 이 페이지에 사람들이 얼마나 접속했는지 알려줘!' 등등 이러한 요청들을 하시는데, 오늘도 요청받은김에 포스팅 하나 하렵니다요~ :D 오늘의 요청 ▶사내 솔루션 ㅇㅇㅇ 사용량을 보고 싶어. 최근 팀별로 키워드 등록 얼마나 했는지 알려줘~ 1. 팀별로 등록한 키워드가 쌓이는 DB에 접속해서 where 문으로 날짜 조건을 걸어서 raw data 를 뽑고 구글 스프레드시트에 복붙! 2. 팀별 코드가 의미하는 팀 이름을 알 수 있는 DB에 접속해서 raw data 를 가져와 구글 스프레드 시트에 복붙한다. *아래 사진은 구글스프레드 시트에 붙여넣은 화면 3. 함수를 슉슉 사용하여 보기 좋게 정리한다. 이번에 사용한 함수는 uniqu.. 2019. 8. 23.
[MSSQL] 기초 쿼리문 SQL은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어입니다. (위키백과) SQL 언어를 사용해서 데이터를 관리하고 검색하죠. SQL 문법을 사용하는 RDBMS의 종류도 다양하고 조금씩 사용법이 다릅니다. 그 중에서 오늘은 MSSQL의 기본 표현들을 소개해 보겠습니다. ▶SELECT, FROM, TOP SELECT 칼럼명1, 칼럼명2, 칼럼명3 FROM 테이블명 ex) SELECT a,b,c FROM A => DB에 있는 많은 테이블들 중 A 테이블에서 칼럼 a,b,c 보여줘 ex) SELECT * FROM A => DB에 있는 많은 테이블들 중 A 테이블에있는 모든 칼럼 보여줘 ▶where, group by, order by where 칼럼명 .. 2019. 8. 22.
728x90
반응형
LIST