반응형

분류 전체보기 115

MySQL 자주 쓰는 숫자 데이터 타입(Numeric Data Types) 간단 정리

이 글은 MySQL 숫자 데이터 타입 개념, 자주 쓰는 숫자 데이터 타입 추천과 설명을 간단히 정리한 글입니다. MySQL 데이터 타입 데이터 타입은 종류별 데이터 저장 공간이 다르며, 작을수록 CPU 소비가 줄고 더 빠릅니다. 하지만 무조건 가장 작다고 좋거나, 가장 크다고 나쁜 것은 아닙니다. 데이터 입력 범위를 고려한 적정 크기의 타입 사용이 가장 좋습니다. 데이터는 숫자, 문자, 영상, 그림 등등 다양한 타입으로 존재합니다. 그중 MySQL에서 자주 쓰는 기본 데이터 타입은 숫자, 문자, 날짜(시간)입니다. 아이디 이름 가입일 3891 김나나 2023-01-01 20013 한나라 2013-02-02 MySQL 숫자 데이터 MySQL 숫자 데이터는 소수점 사용 가능 여부에 따라 정수와 실수 타입으로..

SQL/MySQL 2023.09.18

MySQL 외부 조인(LEFT, RIGHT, FULL JOIN, UNION, UNION ALL) 문법 예시

이 글은 MySQL에서 쓰이는 외부 조인 개념, 종류, 유의점(FULL JOIN, UINION, UNION ALL), 문법, 예시를 담고 있습니다. MySQL 외부 조인 외부 조인은 동시에 갖지 않는 값도 반환합니다. 이는 교집합(동시에 갖는 값)만 반환하는 내부 조인과 차이점입니다. *이에 대한 추가 이해가 필요하다면, 아래 글을 참고해 주세요. MySQL INNER JOIN(내부 조인) 다양한 문법과 예시 외부 조인 종류(LEFT, RIGHT, FULL OUTER JOIN) 외부 조인은 세 종류(LEFT, RIGHT, FULL)로 나뉩니다. 이때 OUTER는 생략 가능합니다. LEFT JOIN(왼쪽 외부 조인) 왼쪽 외부 조인은 왼쪽 테이블을 기준으로 합니다. 왼쪽 테이블 A에 B를 결합하므로, A의..

SQL/MySQL 2023.09.15

MySQL 프로그래머스 SQL 고득점 Kit 동명 동물 수 찾기 문제 답

프로그래머스 SQL 고득점 Kit SELECT에서 '동명 동물 수 찾기' 문제와 답을 공유합니다. *저는 MYSQL 버전입니다. 프로그래머스 동명 동물 수 찾기 문제 설명 프로그래머스 동명 동물 수 찾기 문제 문제 의도: GROUP BY 사용. 두 번 이상 쓰인 이름, 해당 이름 횟수 출력. 동물 이름에서 NULL 제외. 동물 이름 순 정렬. 프로그래머스 동명 동물 수 찾기 답 이름 별 카운트 필요하므로 COUNT(name), GROUP BY name, 예시에 따라 별칭 COUNT. 이름 없는 동물 집계 제외이므로, name IS NOT NULL. 두 번 이상 쓰인 이름 조회이므로 COUNT(name) >= 2. 이때 name그룹화가 선실행 되었고 name 에 조건을 걸어야 하기에, HAVING사용. 만..

MySQL 다중 내부 조인(INNER JOIN 여러 개) 문법, 예시

이 글은 MySQL 다중 내부 조인(INNER JOIN 여러개) 설명, 문법, 예시를 담고 있습니다. MySQL INNER JOIN(내부 조인) 제 JOIN 글에서 두 개 이상, 여러 테이블을 결합하는 것이 조인이라고 했습니다. 그중 INNER JOIN은 교집합을 의미하며, 테이블들 간 교집합을 기준으로 한 테이블처럼 결합됩니다. *관련 글 MySQL INNER JOIN(내부 조인) 다양한 사용 방법과 예시 MySQL 관계형 데이터베이스(RDB), 테이블 JOIN 기초 설명 예시 MySQL 다중 내부 조인(INNER JOIN 여러 개) 그렇다면 다중 내부 조인은 어떻게 되는 것일까요? 먼저 A와 B테이블의 공통키(교집합)를 바탕으로 결합하여, 두 테이블의 데이터를 한 번에 보여주는 하나의 테이블(C)이 ..

SQL/MySQL 2023.09.14

MySQL 프로그래머스 SQL 고득점 Kit 성분으로 구분한 아이스크림 총 주문량 문제 답

프로그래머스 SQL 고득점 Kit SELECT에서 '성분으로 구분한 아이스크림 총 주문량' 문제와 답입니다. *이 글은 MySQL 버전입니다. 성분으로 구분한 아이스크림 총 주문량 문제 설명 문제 의도: GROUP BY 사용 외래키가 참조하는 대상은 해당 테이블에서 기본키이다. 그래서 ICECREAM_INFO테이블의 FLAVOR가 기본키이다. 성분으로 구분한 아이스크림 총 주문량 문제 성분 타입, 성분 타입 별 총 주문량(별칭 필요, TOTAL_ORDER) 출력. 총 주문량 작은 순서 정렬. 성분으로 구분한 아이스크림 총 주문량 답 # 두 테이블의 컬럼들 가져오기 first_half와 icecream_info 두 테이블 선택, 편의상 a와 b로 별칭. first_half와 icecream의 공통값 fla..

MySQL INNER JOIN(내부 조인) 다양한 문법과 예시

이 글은 MySQL에서 여러 테이블 결합에 사용하는 INNER JOIN의 다양한 문법과 예시를 담고 있습니다. *관계형 데이터베이스, JOIN 관련 글 MySQL 관계형 데이터베이스(RDB), 테이블 JOIN 기초 설명 예시 *다중 내부 조인 관련 글 MySQL 다중 내부 조인(INNER JOIN 여러 개) 문법, 예시 MySQL JOIN과 INNER JOIN(내부 조인) JOIN은 공통키를 가진 여러 테이블을 결합하여, 흩어졌던 데이터를 한 테이블에 표현합니다. 이는 내부 조인과 외부 조인으로 나뉘며, 내부조인은 JOIN의 default입니다. 때문에 INNER JOIN = JOIN으로 생각합니다. INNER JOIN은 결합한 테이블들의 교집합을 한 테이블에 표현합니다. 공통키를 기준으로, A와 B가 ..

SQL/MySQL 2023.09.12

MySQL 집계 함수, GROUP BY와 HAVING 사용 방법

이 글은 MySQL에서 자주 쓰는 집계 함수 종류 정리, 집계 함수와 쓰이는 GROUP BY 그리고 조건절 HAVING 설명, 사용 방법, 예시를 담았습니다. MySQL 집계 함수(Aggregate Functions) MySQL에서 집계 함수는 평균, 최대, 최소, 합... 등 NULL 값을 제외하고 계산하는 함수입니다. 또한 SELECT문과 함께 사용합니다. 자주 쓰는 집계 함수 종류 COUNT(): 특정 컬럼 행의 개수, BIGINT 타입, 숫자 데이터 외에도 사용 가능 SELECT COUNT(컬럼명) FROM 테이블명; *COUNT 관련 글 MySQL COUNT 함수 특정 값 개수 찾기 MIN(): 특정 컬럼 행의 최소 값(숫자 데이터에만 사용 가능) SELECT MIN(컬럼명) FROM 테이블명;..

SQL/MySQL 2023.09.11

MySQL 프로그래머스 SQL 고득점 Kit 최솟값 구하기 문제 답

이 글은 프로그래머스 SQL 고득점 Kit 문제와 답을 담고 있습니다. *MySQL 버전입니다. 최솟값 구하기 문제 설명, 문제 가장 먼저 들어온 날짜 구하기 최솟값 구하기 문제 답 문제가 최솟값 구하기이므로, MIN 사용이 출제 의도. 즉, '가장 먼저 들어온' = 가장 작은 수 = MIN SELECT MIN(datetime) FROM animal_ins; 답 2 및 문제 정리 문제 의도는 벗어나지만 같은 산출물을 낼 수 있는 다른 답들도 존재합니다. 그중 ORDER BY, LIMIT사용도 있습니다. SELECT datetime FROM animal_ins ORDER BY 1 LIMIT 1; 날짜에도 최솟값(가장 오래된), 최댓값(가장 최근)을 적용할 수 있다. 최솟값, 최댓값을 LIMIT 1과 유사하..

MySQL 프로그래머스 SQL 고득점 Kit 오프라인/온라인 판매 데이터 통합 문제 답

프로그래머스 SQL 고득점 Kit의 오프라인/온라인 판매 데이터 통합 문제의 답을 공유합니다. *MySQL 버전입니다. 오프라인/온라인 판매 데이터 통합 문제 설명, 예시 데이터 타입은 INTEGER(INT), DATE가 있습니다. OFFLINE_SALE 테이블에는 USER_ID(유저 ID)가 없습니다. 날짜 데이터 형식이 2022-03-01입니다. NULL값이 보입니다. 오프라인/온라인 판매 데이터 통합 문제 두 테이블의 2022년 3월 판매 날짜, 상품ID, 유저 ID, 판매량 출력 OFFLINE_SALE 테이블의 유저ID는 NULL값으로 표시 ①판매일, ②상품ID, ③유저 ID 기준 오름차순 정렬 SELECT-오프라인/온라인 판매 데이터 통합 문제 답 저는 답을 입력하기 전에, 각 테이블의 3월 판..

MySQL COUNT 함수 특정 값 개수 세기

이 글은 MySQL에서 행/데이터 개수를 셀 때 사용하는 COUNT 함수 설명과 예시를 담은 글입니다. MySQL COUNT 함수 SELECT: 테이블 내 모든/특정 데이터 개수 세기 가능. WHERE: COUNT() 값을 조건으로 데이터 필터링 가능. 이로써 데이터 탐색과 오입력 여부 확인, 필터링 등이 가능합니다. MySQL COUNT 함수 사용 방법(문법) COUNT(*), 전체(모든) 행 개수 세기 별표(*) '전체/모든'이라는 의미가 있습니다. 그래서 NULL 값을 포함하여 개수를 셉니다. 특정 컬럼의 행 개수 세기 위와 달리, NULL 값은 제외하고 개수를 셉니다. *NULL 값 관련 글 MySQL NULL 값 치환(대체), COALESCE 함수 예시 중복 없이 특정 컬럼의 행 개수 세기 DI..

SQL/MySQL 2023.09.08
반응형
top