728x90

DBMS (MySQL) 18

[DBMS] 조인(JOIN) 연산

[조인연산] 두 테이블을 결합하는 연산. 서로 다른 테이블에서 데이터를 가져올 때 사용 *MySQL은 OUTER JOIN 지원하지 않아 UNION으로 공부예정 INNER JOIN(교집합) : 조인하는 테이블의 조건이 일치하는(겹치는) 결과만 출력 select * from 테이블명1 inner join 테이블명2 on 테이블명1.속성명 = 테이블명2.속성명; select * from 테이블명1, 테이블명2 where 테이블명1.속성명 = 테이블명2.속성명; 테이블이 3개인 경우 select * from 테이블명1 , 테이블명2 , 테이블명3 inner join 테이블명2 on 테이블명1.속성명 = 테이블명2.속성명 inner join 테이블명3 on 테이블명1.속성명 = 테이블명3.속성명; select *..

DBMS (MySQL) 2023.08.01

[DBMS] order by, limit, distinct, group by, 서브쿼리, 다중조건문

[order by] select * from 테이블명 order by 컬럼명 desc/asc; select문 사용 시 테이블에 입력된 순서대로 출력되는 것이 기본 내림차순(desc), 오름차순(asc) 정렬 필요할 때 사용 기본사용 select * from city order by population desc; 컬럼 합산 사용 후 별명부여하고 오름차순 정렬 select id + population as total from city order by total asc; 컬럼 우선순위 정렬 select * from countrylanguage order by 1; **오름차순 asc는 생략가능 select * from countrylanguage order by 1 desc; 여러컬럼 사용 ①7번째 컬럼을 오..

DBMS (MySQL) 2023.07.30

[DBMS] 트랜잭션, TCL, 함수적 종속성, 정규화, 데이터 무결성, like조건

[트랜잭션] 데이터베이스 상태를 변화시키기 위해 수행하는 작업의 단위 작업의 단위는 SQL 한 문장이 아니며 많은 SQL 명령문을 사람이 정하는 기준에 따라 정해짐 특징 원자성 : 모두 반영되거나 모두 반영되지 않거나 일관성 : 처리결과가 항상 일관되어야함. 트랜잭션 진행 도중 DB가 변경되더라도 처음 참조한 DB로 진행 독립성 : 둘 이상의 트랜잭션 동시 실행되는 경우 각각의 연산에 끼어들 수 없음 지속성 : 작업완료한 트랜잭션 결과가 중도 사라지지 않고 유지됨 [TCL _ Transaction Control Language] 트랜잭션 제어명령 COMMIT 트랜잭션 처리가 정상종료되어 변경내용을 반영하는 연산으로 DB에서 자동실행됨 트랜잭션이 완료되면 DB는 변경되며 이 상태에서는 시스템 오류가 발생하..

DBMS (MySQL) 2023.07.27

[DBMS] 함수(제어흐름, 문자열, 수학, 날짜 및 시간, 시스템 정보)

[제어흐름 함수] 프로그램의 흐름을 제어한다. if 함수 : 수식의 진리값에 따른 값 반환 select 컬럼, if(조건, '참일때반환값', '거짓일때반환값') from 테이블; select bookno, if(bookno>=3,'A','B') as if_result from book; select bookno, if(bookno=2,'2','else') as if_result from book; **해당 데이터베이스가 존재하면 삭제한다 drop database if exists sample_DB; case 함수 : 다중조건을 이용하는 함수 select 컬럼, case when (조건1) then 조건1참일때반환값 when (조건2) then 조건2참일때반환값 ... end as from 테이블; sel..

DBMS (MySQL) 2023.07.25

[DBMS] insert문, select문, update문, delete문

[insert문] 데이터를 입력할 때 사용하는 구문. 미입력 값은 자동으로 null 적용됨 ​ 지정입력 : insert into 테이블명(컬럼1, 컬럼2, 컬럼3...) values(컬럼1값, 컬럼2값, 컬럼3값...); 전체입력 : insert into 테이블명 values(전체컬럼값); 여러 레코드(튜플) 입력 : insert into 테이블명 values(전체컬럼값),(전체컬럼값)...; [select문] 데이터를 조회할 때 사용하는 구문. 표 형식으로 조회 ​ 조건없이 모든자료조회 : select * from 테이블명; 조건없이 특정컬럼조회 : select 컬럼1,컬럼2... from 테이블명; 조건이용 모든자료조회 : select * from 테이블명 where 조건; 조건이용 특정컬럼조회 : ..

DBMS (MySQL) 2023.07.25

[DBMS] 데이터 모델링, ER모델

[데이터 모델링] DB구축 시 필요한 데이터 설계과정. 효율적, 논리적 데이터 모델 구상 작업 ​ 데이터 모델링의 특징 3가지 추상화_현실세계를 일정 형식에 맞게 간략히 표현해야 함 단순화_누구나 쉽게 이해할 수 있도록 제한된 표기법이나 언어를 사용해야 함 명확화_명확히 의미가 해석되어야 하고 한가지 의미만을 가져야 함 개념적 데이터 모델링_대략적인 DB 구성, E-R모델 구성 논리적 데이터 모델링_DB를 테이블로 표현 물리적 데이터 모델링_개발단계 ​ ​ [E-R모델_개념적 데이터 모델] 엔티티(개체) : 모델의 관리 대상, 실제 존재하는 대상, DB의 테이블, 고유하게 식별되어야 함, 직사각형 표시 └강한 엔티티 타입 : 보통의 엔티티 타입 └약한 엔티티 타입 : 자신의 기본 키 애트리뷰트가 없는 엔..

DBMS (MySQL) 2023.07.25

[DBMS] 관계형 데이터베이스, create문, alter문, drop문

[관계형 데이터베이스_RDBMS] 데이터가 하나 이상의 열과 행의 테이블에 저장됨 상호작용을 기반으로 설정되는 여러 테이블 간의 논리적 연결 릴레이션(표, 테이블) : 정보를 구분하여 저장하는 기본단위. 동일 DB 내에서는 같은 이름의 릴레이션이 존재할 수 없음(오류발생) 애트리뷰트(속성) : 하나의 열은 하나의 속성정보를 의미 차수 : 한 릴레이션에 있는 애트리뷰트의 수 튜플(레코드, 데이터) : 릴레이션에 실제 값이 들어있는 각각의 행 카디날리티 : 튜플의 갯수. 0이 될 수 있음(데이터가 없는 경우) 도메인 : 각각의 속성이 가질 수 있는 값들의 집합. 의도했던 값만 저장, 관리하기 위해 사용 ex) 성별의 경우 도메인은 '남','여' 스키마 : DB의 구조와 제약 조건. DB 구성시 데이터가 갖는..

DBMS (MySQL) 2023.07.25

[DBMS] 설치 및 기본 이론

[DB_ DataBase] 서로 관련있는 데이터들의 모임 [DBMS_ DataBase Management System] 데이터베이스의 정의, 조작, 제어, 갱신, 질의처리, 유지보수, 보안 등의 기능 제공 응용 프로그램들이 데이터베이스를 공유하며 사용할 수 있는 환경을 제공하는 소프트웨어 DB로 접근가능하게끔 연결해주는 역할 DBMS의 장점 : 데이터 중복방지, 보안, 백업 및 복구, 효율적 구조, 일관된 데이터 유지, 다양한 인터페이스(여러가지 기능?) DBMS의 단점 : 자원多,복잡, 고비용 ​ [DBS_ DataBase System] DB+DBMS. 사용자가 DBMS를 통해 물리적인 DB와 소통하는 형태의 시스템 데이터베이스 언어 정의어(DDL) : 데이터 관계정의, 구조변경, 수정 create, ..

DBMS (MySQL) 2023.07.25
728x90