SQL 13

[기본 쿼리] 집계함수, Group by/Having, Order by, Like, IsNull, Rank 등

SUM, AVG, MAX, MINSUM(): 컬럼값의 합계AVG(): 컬럼값의 평균MAX(): 컬럼값의 최대값MIN(): 컬럼값의 최소값as(alias) 활용하기 : 위 4가지 함수를 적용한 column명을 다르게 정의하고 싶을 때 사용→ SELECT 함수(컬럼명) FROM 테이블명;SELECT SUM(Population) FROM city; SELECT MAX(Population) FROM city; SELECT MIN(Population) FROM city; SELECT AVG(Population) FROM city; -- as로 컬럼명 새로 지정하기 / as를 생략하고 바로 새로운 컬럼명만 써도 돌아간다. SELECT SUM(Population) as 합계, MAX(Population) as 최대,..

SQL 2024.05.20

[기본 쿼리] 데이터베이스/테이블 CRUD(Create, Read, Update, Delete)

SQL DML(Data Manipulation Language, focusing on CRUD)IT-Data handling functionsCRUD = Create(삽입), Read(읽기), Update(수정), Delete(삭제) Database 안에 Table이 존재Database = Schema 테이블/데이터베이스 생성, 변경, 추가, 삭제테이블 만들기: CREATE TABLE 테이블명(컬럼1 타입1, 컬럼2 타입2, …);테이블 변경하기: ALTER TABLE costomor RENAME customers;컬럼 추가하기: ALTER TABLE customers ADD COLUMN age INT;테이블 컬럼타입’만’ 변경하기: ALTER TABLE 테이블명 MODIFY COLUMN 컬럼 변경하려는..

SQL 2024.05.20

[Leetcode] SELF JOIN 다중조건

1661. Average Time of Process per Machine activity_type: start, endmachine_id별 start~end 소요시간 차의 평균을 구하는 문제였다.그런데 machine_id별로 process가 여러개라서 그냥 machine_id로 groupby를 한 뒤, 차이를 구하기가 쉽지 않았다. [해결 방법1]SELECT a1.machine_id, ROUND(AVG(a2.timestamp - a1.timestamp),3) AS processing_timeFROM activity a1JOIN activity a2 -- SELF JOIN ON a1.machine_id = a2.machine_id AND a1.process_id = a2.process..

SQL 2024.05.19