목록프로그래밍/SQL (6)
코딩.zip

🍪 스토어드 프로그램(stored program)- 데이터베이스에서 실행되는 프로그램 또는 함수로 일련의 SQL문을 포함하고 있는 데이터 베이스 객체- 스토어드 프로그램은 주기억장치(메모리)에 저장된 명령어들의 연속으로 이루어진 프로그램을 의미- 실행 가능한 형태의 프로그램- 특정 작업이 자주 수행되어야 하거나 여러 곳에서 사용되어야 할 때 호출 1️⃣ 스토어드 프로시저(stored procedure)- 데이터베이스 객체 중 하나로 데이터베이스에서 수행할 수 있는 일련의 SQL문과 제어문을 저장한 SQL 스토어드 프로그램을 의미- 데이터 검색, 조작, 업데이트, 삭제 등 다양한 작업 수행 - 조건문 작성법delimiter $$create procedure proc_if()begindeclare x i..

💻 인덱스 "데이터베이스 테이블에서 특정 컬럼이나 컬럼의 집합에 대한 검색 성능을 향상시키기 위해 사용되는 자료구조" 기본 인덱스(primary index) : 기본키에 대한 인덱스보조 인덱스(secondary index) : 책의 찾아보기 페이지와 유사, 보조 인덱스에 있는 기본키 값으로 기본 인덱스에서 행을 검색B-트리 인덱스 : 가장 일반적으로 사용되는 인덱스 형식으로 좌우 자식 간에 항상 균형을 이루는 균형트리 - 테이블 및 인덱스 생성index 인덱스명(컬럼)create table 날씨(년도 int,월 int,일 int,도시 varchar(20),기온 numeric(3,1),습도 int,primary key(년도, 월, 일, 도시),index 기온인덱스(기온),index 도시인덱스(도시));-..

🌳 서브쿼리(subQuery)SQL문 내부에서사용하는 SELECT문 - 서브쿼리가 먼저 실행된 후 메인 쿼리가 실행된다.- 한 문장안에 한 개의 메인 쿼리와 한 개 이상의 서브쿼리가 있는 구조이다. 작은 데이터를 필터링하기 위해 주로 사용된다. (조인 : 큰 테이블을 처리할 때 효과적이다.) 🌱 반환 값에 따른 서브쿼리단일 행 서브쿼리(Single-Row SubQuery) : 단일 행을 반환하는 서브쿼리- 특정 값을 비교하거나 계산할 때 유용>,>=,다중 행 서브쿼리(Multi-Row SubQuery) : 여러 행을 반환하는 서브쿼리- 여러 조건을 충족하는 데이터를 필터링할 때 사용IN : 서브쿼리 각 결과마다 = 연산자 사용하여 비교ALL(최댓값/OR) , ANY(최솟값/AND) : 서브쿼리 각 ..

데이터 무결성을 위해 테이블에 제약조건을 설정한다. 💥 제약조건PRIMARY KEY 제약기본키 설정하는 제약조건기본키는 테이블당 한 개여야 한다.기본키는 NOT NULL 이어야 한다.UNIQUE 제약NULL 값 허용, 컬럼에 유일한 값을 넣는다.자동으로 인덱스 생성FOREIGN KEY 제약외래키 설정하는 제약조건참조하는 테이블의 기본키이거나 NULL이어야 한다. 💨 무결성➡️ 개체 무결성: 기본키 컬럼에 중복된 값 X, NULL값 X ➡️ 참조 무결성: 외래키는 참조되는 테이블의 행을 참조하는 외래키가 존재하는 한 삭제될 수 없고 기본키 변경될 수 없다. - 제약조건 추가해서 테이블 생성;create table 학과(학과번호 char(2) primary key, 학과명 varchar(20) not..

데이터베이스(Database)- DBMS(데이터베이스 관리 시스템)에 의해 관리된다.정형데이터 : 잘 정의된 구조를 갖추고 있는 데이터로, 테이블 형태의 관계형 데이터베이스에서 저장되고 처리반정형데이터 : 일정 수준의 구조를 가지고 있지만 완전히 정형화되어 있지 않은 데이터비정형데이터 : 정해진 구조나 규칙이 없고, 연산에 사용할 수 없는 형태의 데이터관계형 데이터베이스 : 테이블 집합으로 구성, 정형 데이터에 엑세스하는 가장 효율적인 방법 제공NoSQL 데이터베이스 : 관계형 데이터베이스 이외의 형식으로 데이터 저장, 대량의 분산된 데이터 저장하고 조회하는데 특화 4대 RDBMS : MySQL, Oracle, MS-SQL, PostgreSQL 데이터 조작 언어 DDL(데이터 정의어)CREATE TABL..

⭐️ 집계 함수 레코드의 개수나 합계, 평균, 최댓값, 최솟값 등 구할 때 사용 그 외에도문자형 함수날짜/시간형 함수 형 변환 함수제어 흐름 함수▶︎ GROUP BY특정 컬럼을 기준으로 그룹화그룹화를 통해 조회된 데이터로 집계함수(count, avg, sum, max, min)를 사용하기에 용이해짐 - 담당자직위별로 묶고, 같은 담당자직위에 대해서는 도시별로 묶어서 집계한 결과( 1. 담장자직위 순, 2. 도시 순으로 정렬)select 담당자직위, 도시, count(*) as 고객수, avg(마일리지) as 평균마일리지from 고객group by 담당자직위, 도시order by 1,2; * HAVING절- 고객테이블에서 도시별로 그룹을 묶어서 고객수와 평균마일리지를 구하고 그 중에서 고객수가 10명 ..