https://www.programiz.com/sql/online-compiler/
위 사이트는 Online SQL Editor 캡처 화면은 해당 online compiler에서 조회할 수 있는 테이블 리스트이다. 초기값들이며 이를 활용하여 작업을 진행하려 한다.
Select 문은 가장 기본적인 SQL로
SELECT 컬럼정보 FROM 테이블이름 으로 구성되어 있다.
예제 쿼리 :
" SELECT * FROM Customers; "
이 값으로 Customers 테이블을 확인 할 수 있다.
반드시 SELECT 구절과 FROM 구절을 나눠서 같이 잘 작성해야한다.
다음은 Insert 문이다.
INSERT 문은
INSERT INTO TABLE이름 (컬럼명1, 컬럼명2, ... ) VALUES(값1, 값2, ...)
이처럼 구성되어 있다.
이와 SELECT 문을 응용하면 다음처럼 수행할 수 있다.
아래 예제 쿼리 해석이다.
WHERE 절부터 해석해보면 Betty 라는 First name이 record에 존재한다면 'Nami' 라는 First Name의 값을 age는 기본 Betty의 나이에 30살을 올려서 입력해달라는 내용이다.
예제 쿼리 :
INSERT INTO Customers
SELECT customer_id+1 as customer_id, 'Nami' first_name, last_name, age+30, country
FROM Customers
WHERE first_name='Betty'
위처럼 Insert 문을 사용할 수 있다.
다음은 Update 문이다.
Update 문은 UPDATE 테이블이름, SET 변경할 컬럼과 값 정보, WHERE 선택하기 위한 조건 구절로 구성이 되어있다.
예제 쿼리 :
UPDATE Customers SET age = 53 WHERE first_name ='Nami'
Nami의 나이를 보정하는 것이다.
다음은 Delete 문이다.
Delete 문은 DELETE FROM 테이블이름 WHERE 선택하기 위한 조건 으로 구성되어있다.
예제 쿼리 :
DELETE FROM Customers WHERE age >30
해석은 customers 테이블에서 age 값이 30보다 크면 (초과) 레코드를 삭제 한다는 것이다.
본문에서 SQL Syntax 기본 문법에서 지극히 기본에 해당하는 SELECT, UPDATE, DELETE, INSERT INTO 문에 대해서만 다뤘다.
이들은 Data Manipulation Language 로 DML 이라고 불리는 데이터 내의 조작하는데 사용하는 SQL 집합이다.
이외에도 DDL, DCL 등이 있다.
DDL은 테이블의 생성부터 소멸까지를 담당하는 SQL 문법이며 DCL은 테이블과 관련된 권한 (보안, 무결성 등)을 담당하는 SQL 문법이다.
기본 SQL Commans 에 대한 분류는 이렇다고 보면 되고 제품/용도별로 특별한 별도의 command가 더 있을 수 있다.
가령 Oracle(Database의 한 종류)에서는 Merge Into 라고 Insert Into 와 Update 가 합쳐진 command가 있다.
ETL 작업툴이 Informatica에서는 Upsert 라는 기능으로 Update 와 Insert 를 합쳐서 수행한다.
NoSQL인 MongoDB (Database의 한 종류) 에서도 Upsert를 구현하고 있다.
이처럼 다양한 이유로 command를 각기 다르게 구현하여 사용하고 있으니 이점을 유념하여 내가 사용하는 DB의 command를 익혀야 한다.
'정리 > Database' 카테고리의 다른 글
서브쿼리를 활용하여 조건을 주고 갱신하는 법 (1) | 2024.10.26 |
---|---|
SQL 구분자 기준으로 여러행으로 나누기 (0) | 2024.10.26 |
[R] R과 Database 연동 (R과 DB 연동) (0) | 2018.12.02 |
Ubuntu서버에서 MariaDB 원격 접속하기 (0) | 2018.10.18 |