본문 바로가기

DB

(24)
SQL 기본 - join JOIN ***** 중요 *****두 개 이상의 테이블 들을 연결하여 데이터를 출력하는 것. 데이터 중복을 최소화하기 위해 정규화를 거치게 되는데 이로 인해 정보가 여러 테이블로 나뉘어 있다.그런 상황에서 적절하게 테이블을 결합하여 원하는 정보를 출력하는 것이 개발자에게 중요하다.123456789101112131415161718192021222324252627282930313233343536373839404142* 일단 알고 시작할 것.두 개 이상의 테이블에서 JOIN 할 경우 앞에서 두개의 테이블씩 조인한다. A JOIN B JOIN C JOIN D 은(((A JOIN B) JOIN C) JOIN D) 이런 식으로 순차적 조인을 하게 된다. 1. EQUI JOIN// 등가 JOIN, 두 개의 테이블 간..
SQL 기본 - order by 절 order by 절 order by 절은 SQL문장으로 조회한 데이터들을 목적에 맞게 특정 칼럼을 기준으로 '정렬'하는데 사용된다.123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869701. 정렬SELECT PLAYER_NAME 선수명, POSITION 포지션, BACK_NO 백넘버FROM PLAYERORDER BY PLAYER_NAME DESC;// 선수명 칼럼을 기준으로 DESC 즉, 내림차순으로 정렬한다. 아무것도 안적으면 DEFAULT로 ASC 오름차순 SELECT PLAYER_NAME 선수명, POSITION 포지션, ..
SQL 기본 - group by, having 절 집계 함수 여러행들의 그룹이 모여서 단하나의 결과를 돌려주는 다중행 함수.group by 절은 행들을 소그룹화 함.select 절 , having 절, order by 절에 사용할 수 있다.123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869701. 집계함수 count(*) : null값을 포함한 행의 수를 출력count(표현식) : 표현식의 값이 null값인 것을 제외한 행의 수를 출력sum(표현식) : 표현식의 null값을 제외한 합계를 출력avg(표현식) : 표현식의 null값을 제외한 평균을 출력max(표현식) : 표현식..
SQL 기본 - 함수 함수(FUNCTION) 내장 함수는 단일행 함수와 다중행 함수로 나눌 수 있다.다중행 함수는 집계함수, 그룹 함수, 윈도우 함수로 나눌 수 있다.여기서는 단일행 함수만 설명.1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231. 문자열함수LOWER('SQL Expert'); => 결과 : 'sq..
SQL 기본 - where 절 WHERE 절 SQL 쿼리문에서 조건을 입력하기 위한 구문이다.12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485861. where 절에 들어가는 연산자=, >, >=, = 170;// 팀 코드가 'K02' 이면서 키가 170이상인 선수 추출// AND, OR ,NOT 으로 다양한 조건을 걸 수 있다. SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키FROM PLAYERWHERE TEAM_ID = 'K02' AN..
SQL 기본 - TCL 트랜잭션데이터베이스의 논리적 연산 단위.밀접히 관련되어 분리될 수 없는 한 개 이상의 데이터베이스 조작을 가리킨다.즉, 분할 할 수 없는 최소 단위다.은행 계좌 이체에서 두가지 이상의 작업이 필요하다.1. A계좌에서 만원을 빼고2. B계좌에 만원을 넣는다.이 두 가지 작업이 모두 성공적으로 완료되었을 때 종료된다.만약 A계좌에서 만원을 뺐는데 어떤 장애로 B계좌에 만원을 넣는 것을 실패하면 A계좌에 다시 만원을 넣어 복구시켜줘야 한다는 것이다.이런 계좌이체같은 하나의 논리적인 작업 단위를 구성하는 세부적인 연산들의 집합을 트랜잭션이라 한다.트랜잭션의 특징 원자성 : ALL OR NOTHING 연산들을 모두 성공하든지 모두 실패한 원래 상태로 남아 있든지.일관성 : 트랜잭션이 실행되기 전의 데이터베이스가 ..
SQL 기본 - DML DML (Data Manipulation language)테이블 '구조'가 아닌 생성된 테이블에 '레코드, 데이터' 를 컨트롤하는 명령어1234567891011121314151617181920212223242526272829303132333435363738394041424344451. 레코드 삽입INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO) VALUES ('2002007','박지성','K07','MF',178,73,7);// INSERT 구문으로 삽입할 칼럼명과 값을 입력한다.// 문자열은 반드시 '' 로 감싸고 NUMBER는 그냥 숫자로 입력한다.// 전체 칼럼을 입력할 때는 굳이 칼럼명은 없..
SQL 기본 - DDL DDL (Data Definition Language)데이터 정의 언어로 주로 테이블의 생성, 수정, 삭제를 할 수 있는 명령어다.데이터 유형 (*오라클 기준) character : 고정 길이 문자열 정보 , char 로 표현varchar : 가변 길이 문자열 정보 , varchar2 로 표현numberic : 정수, 실수 등 숫자 정보 , number 로 표현date : 날짜와 시각정보 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162631. 테이블 생성CREATE TABLE PLAYER( PLAYER_ID CHAR(7) NOT NULL, PLAY..