SQL_기초 공부

[sql] sql문 종류/작성

메타듀 2023. 2. 21. 10:56
728x90
반응형

DDL (Data Definition Language): 데이터베이스 객체(테이블,뷰,인덱스)의 구조를 정의 한다.

CREATE : 데이터베이스 객체를 생성
DROP : 데이터베이스 객체를 삭제
ALTER : 기존에 존재하는 데이터베이스 객체를 다시 정의하는 역할(객체 수정)

 

DML (Data Manipulation Language): 데이터의 삽입,삭제,갱신등을 처리

INSERT : 데이터베이스 객체에 데이터를 입력
DELETE : 데이터베이스 객체의 데이터를 삭제
UPDATE : 데이터베이스 객체안의 데이터 수정

 

-쿼리문

SELECT : 데이터베이스 객체에 데이터를 조회
3. DCL (Data Control Language) : 데이터베이스 사용자의 권한을 제어
GRANT : 데이터베이스 객체에 권한을 부여
REVOKE : 이미 부여된 데이터베이스 객체 권한을 취소

->개발 시에 주로 Select, insert, update 문을 사용...

oracle 예제

create

create table table_name (
    tno number not null primary key,
    writer varchar2(20) not null ,
    regDate date default sysdate,
    updateDate date default sysdate,
    delflag int default 0,
    title varchar2(50) not null ,
    content varchar2(10000) not null,
    exprieDate date,
    complete int default  0
);
  • 테이블 이름을 지정하고 각 컬럼들은 괄호 "()" 로 묶어 지
  • 컬럼 - 데이터 타입 - 제약조건 순서. 데이터 타입까지는 필수로 지정해야한다.
  • 각 컬럼들은 콤마 ","로 구분되고, 세미콜론";" 으로 끝난다.
  • 한 테이블 안에서 컬럼이름은 같을수 없다. (다른 테이블에서는 상관없음)

drop

drop table tbl_board;

update

UPDATE table_name
     SET column_name = 고칠 내용
     WHERE (조건)column_name = 원래 내용;

delete

DELETE FROM table_name
     WHERE (조건) ;

select

SELECT column_name 내용, column_name2 내용2
      FROM   table_name
      WHERE  (조건);
  • SELECT 연산자(WHERE절에 사용)
    BETWEEN a AND b : a와 b사이의 데이터를 출력.(a, b값 포함)
    IN (list) : list의 값 중 어느 하나와 일치하는 데이터를 출력
    LIKE : 문자 형태로 일치하는 데이터를 출력(%, _사용)
    IS NULL NULL : 값을 가진 데이터를 출력
    NOT BETWEEN a AND b : a와 b사이에 있지않은 데이터를 출력(a, b값 포함하지 않음)
    NOT IN (list) : list의 값과 일치하지 않는 데이터를 출력
    NOT LIKE : 문자 형태와 일치하지 않는 데이터를 출력
    IS NOT NULL : NULL값을 갖지 않는 데이터를 출력

 

MariaDB 예제

create table table_name (
    tno int auto_increment primary key ,
    title varchar(100) not null,
    nowDate date not null,
    content varchar(1000) not null,
    delflag tinyint default 0
);
  • 기본적인 것들은 같음
  • auto_increment 는 식별키(primary key)를 지정하기 위해서 사용한다. 새로운 데이터가 추가될 때 자동으로 새로운 번호가 생성된다.
  • boolean을 true/false로 지정하는 대신에 tinyint 타입을 이용해서 처리한다.
반응형

'SQL_기초 공부' 카테고리의 다른 글

SQL에서 중복 쿼리를 제거 하는 방법  (0) 2023.03.08
[sql] 데이터 모델링의 이해  (0) 2023.02.21
[Oracle] 표준 DB 연결  (0) 2023.02.20
[sql] Group By 에 대해  (0) 2023.02.15