일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- REST API
- OOP
- Interceptor
- 프로그래머스
- LifeCycle
- Spring
- bean
- dfs
- TIL
- 코딩테스트
- winston
- 인접행렬
- node.js
- puppeteer
- 탐욕법
- MySQL
- javascript
- css
- 인접리스트
- GraphQL
- Deep Dive
- html
- 자료구조
- 알고리즘
- nestjs
- Kubernetes
- java
- JWT
- typescript
- Linux
- Today
- Total
목록MySQL (6)
처음부터 차근차근
UNION 이란?? - 결과물 합치기 이다. 그림과 같이 위쪽은 JOIN이라면, 아래쪽은 UNION을 뜻한다. UNION 중복을 제거한 집합 UNION ALL 중복을 제거하지 않은 집합 SELECT CustomerName AS Name, City, Country, 'CUSTOMER' FROM Customers UNION SELECT SupplierName AS Name, City, Country, 'SUPPLIER' FROM Suppliers 두 Table을 위 아래로 합쳐준다. 1. 합집합 나타내기 SELECT CategoryID AS ID FROM Categories WHERE CategoryID > 4 UNION SELECT EmployeeID AS ID FROM Employees WHERE Emp..
JOIN이란?? 두 테이블의 공통된 정보(key값)를 기준으로 테이블을 연결해서 한 테이블처럼 보는것을 의미 1. JOIN(INNER JOIN) - 내부 조인 양쪽 모두에 값이 있는 행(NOT NULL) 반환 'INNER'는 선택사항 교집합이라고 생각하면 편하다. SELECT * FROM Categories C JOIN Products P ON C.CategoryID = P.CategoryID; 왼쪽은 Category의 항목, 오른쪽은 Products의 항목을 나타낸다. SELECT C.CategoryID, C.CategoryName, P.ProductName FROM Categories C JOIN Products P ON C.CategoryID = P.CategoryID; SELECT CONCAT( ..
0. Subquery 사용법 - Subquery란? 하나의 SQL 쿼리 안에 또다른 SQL 쿼리가 있는것을 의미한다. 자주 쓰이는 SubQuery 유형 살펴보기 1. Where에 들어가는 Subquery WHERE (필드명) in (or 조건식) (subquery) 2. Select에 들어가는 Subquery 기존 테이블과 함께 보고싶은 통계 데이터를 손쉽게 붙일때 사용 SELECT 필드명, 필드명, (SELECT...) FROM 3. FROM에 들어가는 Subquery 내가 만든 Table을 바로 사용하거나, 혹은 서브쿼리로 만든 Table을 Join할때 사용 1. 비상관 서브쿼리 SELECT CategoryID, CategoryName, Description, (SELECT ProductName FR..
1. Group BY - 조건에 따라 집계된 값을 가져옵니다. 동일한 범주를 갖는 데이터를 하나로 묶어서, 범주별 통계를 내주는 것을 의미한다. SELECT Country FROM Customers GROUP BY Country; SELECT CategoryID FROM Products GROUP BY CategoryID; ※ 여러 컬럼을 기준으로 그룹화할 수도 있다. SELECT Country, City, CONCAT_WS(', ', City, Country) FROM Customers GROUP BY Country, City; Group by - 그룹 함수 활용하기! 주로 COUNT() 함수와 같이 사용된다. SELECT COUNT(*), OrderDate FROM Orders GROUP BY Ord..
1. 시간/날짜 관련 함수들 CURRENT_DATE, CURDATE 현재 날짜 반환 CURRENT_TIME, CURTIME 현재 시간 반환 CURRENT_TIMESTAMP, NOW 현재 시간과 날짜 반환 SELECT CURDATE(), CURTIME(), NOW(); DATE 문자열에 따라 날짜 생성 TIME 문자열에 따라 시간 생성 SELECT '2021-6-1' = '2021-06-01', // 문자열이기 때문에 다르다고 판단 DATE('2021-6-1') = DATE('2021-06-01'), // 날짜로 변경 후 판단 '1:2:3' = '01:02:03', TIME('1:2:3') = TIME('01:02:03'); SELECT '2021-6-1 1:2:3' = '2021-06-01 01:02:0..
1. 숫자 관련 함수들 ROUND 반올림 CEIL 올림 FLOOR 내림 SELECT ROUND(0.5), // 1 CEIL(0.4), // 1 FLOOR(0.6); // 0 SELECT Price, ROUND(price), CEIL(price), FLOOR(price) FROM Products; ABS 절대값 SELECT ABS(1), ABS(-1), ABS(3 - 10); // 1, 1, 7 SELECT * FROM OrderDetails WHERE ABS(Quantity - 10) < 5; // 6~14까지의 숫자를 나타내줘 GREATEST (괄호 안에서) 가장 큰 값 LEAST (괄호 안에서) 가장 작은 값 SELECT GREATEST(1, 2, 3), // 3 LEAST(1, 2, 3, 4, 5)..