데이터베이스 02.DDL, DML [CREATE,ALTER,DROP,INSERT, UPDATE, DELETE, SELECT]

Posted by PeEn
2019. 9. 4. 14:16 Programing/Database

예제 샘플 db파일

DDL

만들기 CREATE

CREATE TABLE tb(filed1 TEXT, filed2 INTEGER);

수정 ALTER

ALTER TALBE tb ADD PHONE CHAR(13);

삭제 DROP 

DROP 분류	분류명

예시
DROP TABLE book;

 

DML

1. 입력 INSERT

INSERT INTO 테이블명(필드명1,필드명2,..........)
	VALUES("값1","값2",숫자값,........);

 

2. 업데이트 UPDATE

UPDATE 테이블명 SET 레코드명 = '수정할값' 
	WHERE 레코드명 조건 값;


예시
UPDATE book SET author = '홍수' 
	WHERE price >= 20000;
    

 

3. 삭제 DELETE 레코드만 제거

DELETE FROM 테이블명
	WHERE 검색할 필드명 조건 삭제할레이블값;
   
예시
DELETE FROM book
	WHERE author = "홍수";

 

4. 조회 SELECT

SELECT * FROM 테이블명 
	WHERE 조건필드명 = 검색값;
    
예시 
SELECT * FROM book 
	WHERE author = "가나";

 

like "가%"

"가"로 시작하는 레코드 가져오기

= 대신 like를 넣고 사용

예시 
SELECT * FROM book 
	WHERE author Like "가%";

 

중복제거 DISTINCT

SELECT DISTINCT TITLE FROM EMPLOYEE;

 

~로 시작, ~로 끝나는 %

    * %가 들어가면 = 대신 LIKE 사용

SELECT * FROM EMPLOYEE WHERE EMPNAME LIKE "이%";
SELECT * FROM EMPLOYEE WHERE EMPNAME LIKE "%문";

 

~가 아닌 값 <>(부정)

SELECT * FROM EMPLOYEE WHERE DNO <> 2;

 

사이값 BETWEEN 

SELECT * FROM EMPLOYEE WHERE SALARY BETWEEN 3000000 AND 4500000;


SELECT * FROM EMPLOYEE WHERE SALARY >= 3000000 AND SALARY <= 4500000;

 

참 IN

SELECT * FROM EMPLOYEE WHERE DNO IN(1,3);

 

부정 NOT IN

SELECT * FROM EMPLOYEE WHERE DNO NOT IN(1,3);

 

새로운 속성 만들어 보여주기  AS 생성할이름 FROM 테이블

SELECT EMPNAME, SALARY, SALARY * 1.1 AS NEWSALARY FROM EMPLOYEE;

 

NULL인 값(기입하지 않은 값) 찾기

SELECT * FROM EMPLOYEE WHERE MANAGER IS NULL;

 

NULL이 아닌 값(기입한 값) 찾기

SELECT * FROM EMPLOYEE WHERE MANAGER IS NOT NULL;

 

오름차순(큰순) 정렬 BY 속성이름 ASC

 * ASC 생략 가능

SELECT * FROM EMPLOYEE ORDER BY SALARY

 

내림차순(작은순) 정렬 BY 속성이름 DESC

SELECT * FROM EMPLOYEE ORDER BY SALARY DESC

 

오름차순과 내림차순 정렬

     *DNO는 ASC, SALARY는 DESC 정렬

SELECT * FROM EMPLOYEE ORDER BY DNO, SALARY DESC

 

평균, 최대값 그룹지어 보여주기

SELECT AVG(SALARY) AS AVGSAL, MAX(SALARY) AS MAXSAL FROM EMPLOYEE GROUP BY DNO;

 

'Programing > Database' 카테고리의 다른 글

데이터베이스 무결성 제약조건  (0) 2019.10.02
데이터베이스 WHERE 조건  (0) 2019.09.25
관계대수 JOIN  (0) 2019.09.23
데이터베이스 01 [데이터타입]  (0) 2019.09.04
DB SQLite  (0) 2019.07.07