[MySQL] 7. 복수의 테이블 다루기
·
DB/MySQL
31. 집합 연산 SELECT ... UNION [ALL | DISTINCT] SELECT ... [UNION [ALL | DISTINCT] SELECT ...] UNION은 다중 SELECT 문을 하나의 결과 집합으로 결합할 때 사용된다. SELECT로 지정된 튜플에 속해 있는 모든 컬럼의 값들 자체가 중복 체크의 기준이 된다. UNION ALL UNION [DISTINCT] union과 union all의 실행 계획을 보면 union는 실행 시 임시 테이블을 생성한다는 것을 확인할 수 있다. union에서 중복제거를 위한? 추가 연산을 수행한다. MySQL 내부적으로 UNION/UNION ALL 처리과정 최종 UNION [ALL | DISTINCT] 결과에 적합한 임시 테이블(Temporary tab..
[MySQL] 5. 집계와 서브쿼리
·
DB/MySQL
20. 집계함수COUNT() : 행 개수를 반환 NULL 값이 있는경우 : COUNT(*)는 NULL 포함, 칼럼 지정할 경우 포함하지 않는다.AVG() : 해당 행 평균MIN() : 해당 열의 최소값MAX() : 해당 열의 최대값 GROUP BY가 MIN/MAX의 경우 EXPAIN을 실행해보면, Using index for group-by를 확인할 수 있다.22. 그룹화GROUP BY 구에 열을 지정하여 그룹화하면 지정된 열의 값이 같은 행이 하나의 그룹으로 묶인다. GROUP BY 구로 그룹화된 각각의 그룹이 하나의 집합으로서 집계함수의 인수로 넘겨진다.xxxxxxxxxxSELECT ...FROM 테이블명GROUP BY 열1, 열2, ....GROUP BY에서 조건을 주고 싶을 경우 WHERE를 사용..
[MySQL] 4. 데이터의 추가, 삭제, 갱신
·
DB/MySQL
16. 행 추가하기 - INSERT 1) INSERT로 행 추가하기 INSERT INTO 테이블명 VALUES(값1, 값2, ...) INSERT INTO 테이블명(열1, 열2, ...) VALUES(값1, 값2, ...) , (값1, 값2, ...) , (값1, 값2, ...) , ... 테이블의 열에 NOT NULL제약이 있을 경우, 해당 열에 NULL 삽입 시 에러가 발생한다. CREATE TABLE IF NOT EXISTS sample ( id INT, num INT NOT NULL ); INSERT INTO sample VALUES(1); //error... INSERT INTO sample VALUES(1, NULL); //error... CREATE TABLE IF NOT EXISTS sam..