[프로그래밍] DataBase 15

[DATABASE] SQL 작성 순

SQL문 작성 시 명령어의 순서는 SQL의 기본 문법 규칙을 따라야 한다.SQL에서 쿼리의 기본 작성 순서와 각 절의 위치는 다음과 같다:SELECT: 조회할 열(column)을 지정예를 들어 SELECT name, age는 name과 age 열을 선택FROM: 데이터를 가져올 테이블을 지정예를 들어 FROM employees는 employees 테이블에서 데이터를 가져옴JOIN: 여러 테이블을 연결할 때 사용INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN 등 다양한 종류가 있으며,조인 조건은 ON을 사용하여 지정WHERE: 필터링 조건을 지정예를 들어 WHERE age > 30은 age가 30보다 큰 데이터만 선택GROUP BY: 데이터를 그룹화할 기준을 지정예를 들어 ..

[DATABASE] SELF JOIN, UNION, GROUP BY

1. SELF JOIN예시: 의사가 의사를 참조하는 경우병원 데이터베이스에서 Doctors 테이블에는 의사와 그들의 Supervisor 의 정보가 들어 있을때,의사가 자신의 상급 의사 정보를 조회하기 위해 SELF JOIN을 사용 Doctors 테이블DoctorIDDoctorNameSupervisorID1Dr. KimNULL2Dr. Lee13Dr. Park14Dr. Choi2 SELF JOIN 예시 쿼리코드 예시 : SELECT d1.DoctorName AS Doctor, d2.DoctorName AS SupervisorFROM Doctors d1LEFT JOIN Doctors d2 ON d1.SupervisorID = d2.DoctorID; 결과DoctorSupervisorDr. KimNULLDr. L..

[DATABASE] ORACLE JOIN

여러 테이블에서 데이터를 결합하여 하나의 결과 세트로 반환할 때 사용예제 테이블 Patients 테이블:patient_idnamedoctor_iddepartment1John Doe101Cardiology2Jane Smith102General3Alice Lee103OrthopedicsDoctors 테이블:doctor_iddoctor_namespecialization101Dr. WilliamsCardiology102Dr. BrownGeneral104Dr. AndersonPediatrics1. INNER JOIN : 두 테이블에서 일치하는 행을 반환예시 코드 : SELECT p.patient_id, p.name, d.doctor_name, d.specializationFROM Patients pINNER JO..

[DATABASE] ORACLE 함수와 표현식

ORACLE 의 함수는 크게 단일 행 함수 와 그룹 함수(집계 함수)로 나뉨 단일 행 함수 : 각 행에 대해 작업을 수행하여 결과를 반환사용 예:UPPER() : 문자열을 대문자로 변환SELECT UPPER(first_name) AS upper_name FROM Patients;-- 환자의 이름을 대문자로 변환하여 반환합니다. LOWER() : 문자열을 소문자로 변환SELECT LOWER(last_name) AS lower_name FROM Doctors;-- 의사의 성을 소문자로 변환하여 반환합니다. TO_CHAR() :  날짜나 숫자를 문자열로 변환SELECT TO_CHAR(birth_date, 'YYYY-MM-DD') AS formatted_date FROM Patients;-- 생년월일을 'YYY..

[DATABASE] ORACLE 연산자

데이터베이스 쿼리에서 값을 조작하거나 비교하기 위해 사용주요 연산자1. 산술 연산자 : 수학적 계산 수행종류 : + , - , * , /  2. 비교 연산자 : 두 값의 비교를 통해 조건을 평가종류 : = , , != , > , = ,  3. 논리 연산자 : 여러 조건을 결합하거나 논리적 평가 수행종류 : AND , OR , NOT 4. BETWEEN 연산자 : 특정 번위 내의 값을 확인예시SELECT * FROM Patients WHERE birth_date BETWEEN '1990-01-01' AND '2000-12-31'; 5. IN 연산자 : 열 값이 지정된 값 목록 중 하나와 일치하는지 확인예시SELECT * FROM Patients WHERE gender IN ('M', 'F'); 6. LI..

[DATABASE] ORACLE SQL

ORACLE DATABASE 에서 사용하는 주요 언어 1. DDL (DATA DEFINITION LANGUAGE) : 데이터베이스의 구조나 스키마를 정의하거나 변경 주요 명령어 CREATE :  TABLE 을 생성코드예-- 병원 환자 정보를 저장하는 테이블 생성CREATE TABLE Patients ( patient_id INT PRIMARY KEY, -- 환자의 고유 ID, 기본 키 first_name VARCHAR(50), -- 환자의 이름 last_name VARCHAR(50), -- 환자의 성 birth_date DATE, -- 생년월일 gender CHAR(1), ..

[DataBase] SQL 구문

SQL 문데이터베이스에서 수행해야 하는 대부분의 작업이 SQL을 통해 수행 SELECT * FROM Human;SQL 키워드는 대소문자를 구분하지 않음 (select과 SELECT는 같음)명령문의 끝을 ; 로 알림기본 SQL 명령SELECT- 데이터베이스에서 데이터를 추출UPDATE- 데이터베이스의 데이터를 업데이트DELETE- 데이터베이스에서 데이터를 삭제INSERT INTO- 데이터베이스에 새로운 데이터를 삽입CREATE DATABASE- 새로운 데이터베이스를 생성ALTER DATABASE- 데이터베이스를 수정CREATE TABLE- 새 테이블을 생성ALTER TABLE- 테이블을 수정DROP TABLE- 테이블을 삭제CREATE INDEX- 인덱스(검색 키)를 생성DROP INDEX- 인덱스를 삭제..

[DataBase] SQL

SQL (Structured Query Language) 구조적 쿼리 언어데이터베이스에 액세스하고 조작하기 위한 표준 언어 1986년에 ANSI(American National Standards Institute)의 표준이 되었고, 1987년에는 ISO(International Organization for Standardization)의 표준이 됨SQL은 ANSI/ISO 표준임에도 불구하고 SQL 언어에는 다양한 버전이 있음SQL 로 할 수 있는 작업데이터베이스에서 쿼리 실행데이터베이스에서 데이터 검색데이터베이스에 데이터 레코드 삽입데이터베이스의 데이터 레코드 업데이트데이터베이스에서 데이터 레코드 삭제새로운 데이터베이스 생성SQL 언어를 사용하여 데이터베이스 관리 시스템(DBMS)에게 새로운 데이터베이..

[DataBase] Table 제약조건

데이터베이스의 테이블에 저장된 데이터가 특정 규칙을 따르도록 강제하는 규칙 또는 제한데이터의 정확성, 일관성, 신뢰성을 보장하기 위해 사용 PRIMARY KEY (기본 키 제약 조건)각 행을 고유하게 식별하는 데 사용되는 열(또는 열의 조합)에 적용기본 키로 지정된 열은 NULL 값을 가질 수 없으며, 테이블 내에서 각 행은 고유한 기본 키 값을 가져야 함users 테이블에 user_id를 기본 키로 설정하는 예CREATE TABLE users ( user_id SERIAL PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL); FOREIGN KEY (외래 키 제약 조건) 두 테이블 간의 관계를 정의하고, 참조 ..

[DataBase] 무결성

무결성 데이터베이스에서 데이터의 정확성, 일관성, 유효성을 유지하는 것정확성(Accuracy)데이터가 현실 세계의 사실이나 예상된 값과 정확히 일치하는 정도예로 사용자의 주소, 전화번호와 같은 정보는 실제 정보와 일치해야 함 일관성(Consistency)데이터베이스 내의 모든 데이터가 논리적으로 일관된 상태를 유지하는 것예로 두 테이블 간의 관계에서 참조 무결성이 유지되어야 하며, 동일한 데이터는 모든 곳에서 동일한 값을 가져야 일관성은 데이터베이스의 다양한 부분 간의 모순이 없음을 보장함유효성(Validity)데이터가 정해진 규칙, 제약 조건, 도메인 등에 맞게 입력되었는지의 여부예를 들어, 이메일 필드에는 올바른 형식의 데이터(~@~.~)만 입력되어야 하며, '성별' 필드에는 '남', '여' 와 같은..