기본 SQL 구문

SELECT

SELECT a.column_name1
      ,a.column_name2
      ,a.column_name3
      ,a.column_name4
      ,a.column_name5
      ,a.column_name6
  FROM table_name a
 WHERE a.column_name = ????
 ORDER BY a.column_name1
         ,a.column_name2;

LIMIT

쿼리 결과의 갯수를 제한한다.

SELECT column_name
      ,COUNT(column_name) AS cnt
  FROM table_name a
 GROUP BY column_name
 ORDER BY COUNT(column_name) DESC 
 LIMIT 2;  -- COUNT(COLUMN_NAME)가 많은 데이터를 가져오되 2개까지만 가져온다

SELECT column_name
      ,column_name2
  FROM table_name a
 ORDER BY column_name 
 LIMIT 0,5; --  0번째부터 5개 데이터를 가져온다.

INSERT

Single Row 입력

INSERT INTO table_name
  (column_name1, column_name2, …)
VALUES
  (변수 또는 값, 변수 또는 값, …);

Multi Row 입력

INSERT INTO table_name
  (column_name1, column_name2, …)
VALUES
  (변수 또는 값, 변수 또는 값, …)
, (변수 또는 값, 변수 또는 값, …)
, (변수 또는 값, 변수 또는 값, …);

INSERT ON DUPLICATE KEY UPDATE

테이블에 데이터를 입력할 때 중복되는 키(Primary Key와 모든 Unique Key)가 있으면 중복된 레코드의 컬럼값을 UPDATE 하고, 중복된 레코드가 없으면 INSERT 한다.

오라클 DB에서 제공하는 MERGE 기능과 유사하다.

제약사항: INSERT 또는 UPDATE에 대한 트리거가 활성화된 테이블에 대해서는 사용할 수 없다.

중첩된 INSERT 문에서도 사용할 수 없다.

INSERT INTO table_name1
  (column_name1, column_name2, column_name3, …)
SELECT column_name1
      ,column_name2
      ,column_name3
      ,…
  FROM table_name2
ON DUPLICATE KEY
UPDATE column_name2 = 새로운값
      ,column_name3 = 새로운값;

UPDATE

UPDATE table_name
   SET column_name1 = 변수 또는 값 또는 select구문
      ,column_name2 = 변수 또는 값 또는 select구문
 WHERE column_name = 조건;

DELETE

DELETE FROM table_name 
 WHERE column_name = 조건;

results matching ""

    No results matching ""