DBMS 4

[MySQL] 서브쿼리(Sub Query) - 단일행, 다중행, 스칼라, 인라인 뷰

서브쿼리는 SQL문 안에 들어가는 또 다른 SELECT문이다.메인쿼리에 종속되어 있어 메인쿼리 없이 단독적으로 실행될 수 없으며서브쿼리는 메인쿼리의 컬럼을 사용할수는 있지만반대로 메인쿼리가 서브쿼리의 컬럼을 사용할수는 없다.-- 서브쿼리 구조select ... from where 컬럼 = (select ...);서브쿼리 실행 순서안쪽 SELECT 실행 > 컬럼에 저장 > 바깥쪽 SELECT 실행1) 중첩1_1) 단일 행 서브쿼리결과가 하나의 값만 나오는 서브쿼리방식이다. (1행 1열)단일행 비교 연산자와 함께 사용한다. ( =. >, =, )서브쿼리 결과가 2건 이상 반활될경우 에러가 발생하기 때문에보통은 MAX(), MIN(), AVG()와 같은 그룹함수와 자주 사용된다. (값이 하나만 출력되는!) 예..

[SQL] UNION 정리(UNION ALL과 차이점, JOIN과 차이점, 정렬 시 주의사항)

두개의 SELECT문을 수직으로 합쳐하나의 결과로 만들어주는 집합 연산자를 UNION이라고 한다. 서로 다른 테이블에서 유사한 형태의 데이터를 한 번에 가져오거나,하나의 테이블 내에서 조건별로 나눠져있는 데이터를 합칠 때 사용한다.💡 UNION 사용 시 필수 조건1) 가져 올 테이블의 열(Column)의 개수가 같아야 한다.2) 열의 데이터 타입이 위아래 순서대로 서로 호환되어야 한다. (첫 번째 열이 문자형이면 두 번째 SELECT문의 첫번째 열도 문자형!!)-- 기본 문법SELECT 컬럼1, 컬럼2 FROM 테이블AUNIONSELECT 컬럼1, 컬럼2 FROM 테이블B;❓ UNION과 JOIN의 차이점JOIN의 경우 테이블을 합치면 더 많은 열(Column)을 가지게 된다.하지만 UNION은 열은 ..

[MySQL] DML, DDL 실행, 테이블 생성, 데이터타입, 제약조건

1) 데이터베이스 생성ai라는 데이터베이스를 생성하면 좌측 스키마창에 ai 폴더가 생긴것을 확인할 수 있다.※ 실시간 반영이 되지 않기 때문에, 마우스 우클릭 → Refresh All 클릭하여 새로고침-- create database 데이터베이스명create database ai;2) 테이블 생성 구조 (데이터타입, 제약조건)테이블은 데이터를 행과 열로 스키마에 따라 저장할 수 있는 구조로컬럼명과 데이터타입, 제약조건을 함께 적어주어야 한다.create table 테이블명( 컬럼명1 데이터타입 제약조건, 컬럼명2 데이터타입 제약조건, ...);2_1) 데이터 타입2_1_a) 정수형int : 기본 숫자, 약 21억단위까지 사용가능하다.bigint : 억단위 넘어갈 때 사용한다. 2_1_b) 실수형float..

데이터베이스 기초 (DB, DBMS, RDBMS, SQL)

데이터(Data)란?데이터란 정보를 나타내는 숫자, 문자, 기호의 집합으로가공되지 않은 사실 또는 값의 집합을 말한다. 쉽게 말해,우리가 말하고 글을 쓰고 어떤 행동을 하는 모든것이 데이터가 될 수 있다.데이터베이스(DataBase)란?데이터베이스는 위에서 말한 데이터를 체계적으로 구성한 집합을 말한다. 데이터베이스는 특정 목적을 위하여 조직화되고 관리할 수 있는데정보를 효율적으로 저장할 수 있으며검색, 업데이트, 관리를 할 수 있는 기술적인 도구와 구조를 제공한다.데이터베이스 관리 시스템(DBMS - DataBase Management System)데이터베이스 관리 시스템은 DBMS라고도 불리며데이터베이스를 효율적으로 저장하고 관리하기 위한 소프트웨어이다. 단순히 데이터를 저장하는 것을 넘어서검색, 추..