본문 바로가기

Database14

JOIN 조인이란 관련성있는 두개이상의 테이블을 연결해, 흩어져있는 정보를 한 번에 가져오는 방법 조인을 할 수 있는 배경 우리가 사용하는 SQL문법이 작동하는 데이터베이스는 RDB이다. 관련성있는 테이블들을 큰 테이블 하나로 만드는것이 아니라 여러개 테이블로 나눠서 데이터 저장. 테이블들간 관계를 정의 예시)쇼핑몰 유저의 아이디, 연락처, 배송주소, 구매한 상품의 이름, 상품의 가격, 구매한 개수 등 효율적인 데이터 저장을 위해 유저정보테이블과 상품정보테이블을 따로 만들고 두 테이블을 연결하는 번호를 부여하면 중복없이 저장하면서 테이터를 연결해서 볼 수 있다. -> RDB ▲테이블 JOIN 테이블 ON 조인이 되는 기준 컬럼 = 컬럼 JOIN 테이블 ON 조인이 되는 기준 컬럼 = 컬럼 만약 조인 키로 사용해야.. 2021. 5. 9.
CASE문 CASE SELECT CASE WHEN categoryid = 1 THEN '음료' WHEN categoryid = 2 THEN '조미료' ELSE '기타' END AS 'categoryName', * FROM Products SELECT CASE WHEN categoryid = 1 AND SupplierID = 1 THEN '음료' WHEN categoryid = 2 THEN '조미료' ELSE '기타' END AS 'categoryName', * FROM Products ▲위의 casea문 응용버전 CategoryID별로 평균가격을 조회 SELECT CategoryID, , AVG(Price) FROM Products GROUP BY CategoryID 새로 정의한 CategoryName별로 GROU.. 2021. 5. 9.
GROUP BY, HAVING절 현업에서는 테이블 전체를 더하는 경우는 없고 특정 카테고리별로 더한다. 전체 데이터를 그루핑하는 방법을 배워보자. 예를 들어, 공급자별 평균가격을 구해보자. SELECT SupplierID, AVG(Price) FROM Products GROUP BY SupplierID //그룹핑하는 기준 컬럼 여기서 카테고리별로도 보고싶다면 SELECT SupplierID, Categoryid, AVG(Price) FROM Products GROUP BY SupplierID, Categoryid //그룹핑하는 기준 컬럼 따라서 여러가지 기준으로 그루핑하고싶다면 ,(콤마)찍고 이어주면됨. MySQL에서는 GROUP BY 1, 2로도 쓸수 있다. SELECT에 있는 첫번째, 2번째 칼럼기준으로 그룹바이해라는 뜻 하지만 명.. 2021. 4. 28.
집계함수 특정 컬럼에 null값이 들어갔을때 null을 제외하고 count DISTINCT : 중복된 값을 제외 COUNT(DISTINCT) : null 제외한 중복된 값을 제외한 수 sum :합계 avg: 평균 *null을 처리하는 방식에 따라 평균구하는 방식 달라짐 주의 null을 null로 처리할 경우 avg(visits) from sample;로 계산함 null을 0으로 처리할 경우 sum(visits)/count(*)로 계산해야함 2021. 4. 28.