썸네일 SQL 프로그래머스 | 동물의 아이디와 이름 | ORDER BY 동물의 아이디와 이름 https://school.programmers.co.kr/learn/courses/30/lessons/59403 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 동물 보호소에 들어온 모든 동물의 아이디와 이름을 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요. SQL을 실행하면 다음과 같이 출력되어야 합니다. SELECT ANIMAL_ID, NAME FROM ANIMAL_INS ORDER BY ANIMAL_ID ORDER BY절에 ASC를 적어주지 않으면 기본적으로 오름차순 정렬됨
썸네일 SQL 프로그래머스 | 중복 제거하기 | DISTINCT | NULL을 제외하고 세주는 COUNT( ) 중복 제거하기 https://school.programmers.co.kr/learn/courses/30/lessons/59408 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다. ▼ DISTINCT 컬럼명, COUNT(컬럼명) SELECT COUNT(DISTINCT NAME) count FROM ANIMAL_INS 중복되는 이름을 하나로 치게 만들려면 DISTINCT를 사용해야 함. 이 문제에서는 '이..
썸네일 SQL 프로그래머스 | 역순 정렬하기 | ORDER BY ~ DESC 역순 정렬하기 https://school.programmers.co.kr/learn/courses/30/lessons/59035 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 ANIMAL_ID 역순으로 보여주세요. SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC 결과를ANIMAL_ID의 '역순'으로 정렬해야 하므로 ORDER BY절에 해당 컬럼의 DESC (내림차순) 정렬해줌
썸네일 SQL | 데이터 정리(없는 데이터, 사용할 수 없는 데이터) 1. NULL값 정리 방법 1-1) 제외시키기 문제) 평균 rating 구하기 ▶ 원본 데이터의 rating 컬럼 값에 'Not given'이라는 값이 있음 ▶ [MySQL] 사용할 수 없는 값은 알아서 연산에서 제외해줌 → 0으로 간주함 : 연산에 사용된 데이터는 'Not given'을 제외한 데이터 SELECT restaurant_name, AVG(rating) avg_rating, AVG(IF(rating'Not given', rating, NULL)) avg_rating2 FROM food_orders Group By 1 ▶ NULL 제거 - NULL 제거 이전 데이터 상태 - NULL 제거 이후 데이터 상태 : JOIN 중 INNER JOIN 한 효과와 동일한 상태가 됨 : WHERE절에서 IS..
썸네일 SQL | 날짜 데이터 포맷, 조건 1. 날짜 데이터 : 문자/숫자 타입과 같이 날짜 데이터도 특정한 타입을 가지고 있음 : 년, 월, 일, 시, 분, 초 등의 값을 모두 가지고 있고, 목적에 따라 '월', '주', '일' 등으로 포맷 변경이 가능 2. 날짜 데이터의 여러 포맷 ▶ DATE 함수로 데이터 타입을 날짜로 바꾸기 ① yyyy-mm-dd 형식의 컬럼을 날짜 타입으로 바꾸기 SELECT DATE(date) date_type, date FROM payments >> 여기서 왼쪽의 시계 모양은 해당 컬럼의 데이터 타입이 날짜라는 의미, abc는 데이터 타입이 문자라는 의미 >> 즉, 오른쪽의 date 컬럼의 값들은 보이기엔 다 날짜처럼 생겼지만 사실 문자형 데이터였고, date_type 컬럼의 값들은 DATE 함수로 진짜 날짜 데이터..
썸네일 SQL | Pivot Table 만들기 | 실습 문제 0. SQL로 Pivot Table (피벗테이블) 만들기 피벗 테이블을 사용하면 데이터를 한 눈에 쉽게 볼 수 있다는 장점이 있다. 컴퓨터 활용능력 1급 실기 시험을 준비하면서 엑셀에서도 구현해봤던 기억이 나는데 이와 같은 것을 SQL에서도 구현할 수 있다. 뭔가 피벗 테이블 하면 왠지 좀 어려울 것 같은 느낌이 드는 분들도 있을 텐데 (← 는 사실 제 얘기..) 이번 기회에 피벗 테이블에 대한 개념을 확실히 잡아보자. 1. Pivot Table이란? : 2개 이상의 기준으로 데이터를 집계할 때, 보기 쉽게 배열하여 보여주는 것 : 한 컬럼 안에 있던 데이터 값들을 열로 지정해 주는 것 ▶ Pivot Table의 기본구조 : 밑에 제가 만들어둔 2. 실습문제 이미지 보면 확실히 이해 가능!! [참고 게시..
썸네일 SQL | JOIN(조인)할 때 ON절의 컬럼명, 꼭 같아야 할까 0. JOIN(조인)할 때 컬럼명 논란 JOIN할 때 양 테이블의 컬럼명이 꼭 같아야 하는 걸까? 예를 들어, 고객정보 테이블과 주문정보 테이블이 있다. 그런데 이 둘을 이어주는 컬럼이 이런 상황이라면..? - 고객정보 테이블: '고객 아이디' - 주문정보 테이블: '고객ID' 여러분이 생각하는 정답은 YES(조인이 된다) or YES(조인이 된다)? 1. JOIN에 대한 기본사항 ▶ JOIN의 기본 구조 SELECT (조회할 컬럼) FROM (테이블1) (INNER/LEFT/RIGHT) JOIN (조인할 테이블2) ON 테이블1.공통칼럼 = 테이블2.공통칼럼 WHERE (조건절) GROUP BY (그룹화할 컬럼명) ORDER BY (정렬 기준 컬럼명) ASC/DESC 2. JOIN(조인) 컬럼명 논란 ..
썸네일 SQL | 서브쿼리(Subquery) 사용법 정리 | 서브쿼리 예제 0. 서브쿼리(Subquery) 어렵지 않아요! (?ㅎ) 내가 SQL을 처음 접하고, 나름 재미있게(?) 공부하다가 맞닥뜨린 첫 고비가 바로 서브쿼리였다. SELECT절 / WHERE절 / FROM절 등 다양한 위치에서 서브쿼리를 사용할 수 있다고 배웠는데 도대체 언제 SELECT절에 서브쿼리를 쓰는지, 언제 FROM절에 서브쿼리를 쓰는지 감이 안와서 힘이 들었던 기억이 있다. 이건 당시 내가 정리했던 SQL 서브쿼리 정리노트다. (혹시 이 게시물보다 조금 더 자세한 설명이 필요하다면, 아래 게시글 참고 요망) [참고 게시글] [IT 교육/SQL] - SQL 4주차 강의 노트정리[국비지원_스파르타 코딩클럽] SQL 4주차 강의 노트정리[국비지원_스파르타 코딩클럽] 스파르타 코딩클럽 SQL 4주차 강의 '..
썸네일 SQL | IF문, CASE문으로 범주 별 다른 조건 적용하기 0. IF문 / CASE문이 유용한 이유 범주 별로 값을 구할 때 사용하는 대표적인 SQL문법은 Group By절이다. 그런데 만약 범주 별로 다른 연산(계산, 문자바꾸기)을 적용하고 싶다면? 이럴 때 사용할 수 있는 것이 IF문과 CASE문이다. IF문과 CASE문을 사용하면 새로운 카테고리를 만들고, 그 안에서 각자 다른 연산을 적용할 수 있다. IF문과 CASE문에 대해 자세히 알아보자. 1. IF()문 집중 분석 1-1) IF문 : 조건에 따라 다른 방법을 적용하고 싶을 때 : 원하는 조건을 충족할 때 적용할 방법과 충족하지 못했을 때 적용할 방법을 지정해줄 수 있음 if(조건, 조건을 충족할 때, 조건을 충족하지 못할 때) 1-2) IF문 실습문제 문제1) 한식 음식점일 경우에는 '한식', 한식..