본문으로 바로가기

MySQL 문법

category 데이터베이스/MySQL 2018. 12. 20. 18:33

MYSQL 문법

 

오늘은 MySQL 간단 문법에 대해 설명드리도록 하겠습니다.

  • SELECT - 데이터베이스에서 데이터를 추출합니다.
  • UPDATE - 데이터베이스의 데이터를 업데이트합니다.
  • DELETE - 데이터베이스에서 데이터를 삭제합니다.
  • INSERT INTO - 새로운 데이터를 데이터베이스에 삽입합니다.
  • CREATE DATABASE - 새 데이터베이스를 만듭니다.
  • ALTER DATABASE - 데이터베이스를 수정합니다.
  • CREATE TABLE - 새 테이블을 만듭니다.
  • ALTER TABLE - 테이블을 수정합니다.
  • DROP TABLE - 테이블을 삭제합니다.
  • CREATE INDEX - 색인 (검색 키)을 생성합니다.
  • DROP INDEX - 색인을 삭제합니다.

이렇게 문법들이 있습니다.

 

▶SELECT

 

SELECT 구문은 테이블의 데이터를 선택하는데 사용됩니다.

 

SELECT * FROM table_name;

위의 처럼 쓸 수 있는데요.

위는 table_name으로 부터 모든 데이터를 조회한다는 뜻입니다.

 

SELECT DISTINCT column1, column2, ...
FROM table_name;

위 구문은 중복된 데이터들을 다 출력하는 것이아니고 중복 된것들은 하나로 취급하여 서로 다른 즉 뚜렷한 값들만을 출력합니다.

중복 포함 시 80개의 데이터가 중복을 제외하고 출력하면 훨씬 줄어들겠죠 ??

 

SELECT column1, column2, ...
FROM table_name
WHERE condition;

위 구문은 지정된 조건(condition)을 충족하는 레코드만 추출합니다.

이 절은 SELECT 뿐 아니라 UPDATE, DELETE 절에서도 사용 가능합니다.

SELECT * FROM Customers
WHERE Country='Mexico'; 이렇게 있으면 나라가 멕시코인 데이터만 출력을 하게 됩니다.

 

= Equal
<> Not equal. Note: In some versions of SQL this operator may be written as !=
> Greater than
< Less than
>= Greater than or equal
<= Less than or equal
BETWEEN Between a certain range
LIKE Search for a pattern
IN To specify multiple possible values for a column

위 표는 Where에 들어가는 연산자들입니다. Where 절에는 또한 And OR Not연산자들이 들어가죠.

 

SELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin'; 이것은 나라가 독일이고 도시는 베를린인 데이터를 뽑겠죠. 반대로

 

SELECT * FROM Customers
WHERE City='Berlin' OR City='München';는 도시가 베를린이 거나 도시가 München인 데이터를 출력하겠죠.

 

정렬 해서 뽑고 싶다면 ORDER BY절을 이용합니다.

 

SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;

즉 ORDER BY 뒤에 나온 컬럼에 대해서 정렬을 하는데 DESC는 내림차순 ASC는 오름차순입니다.

 

NULL값을 판단하는 것은 ==와 같은 연산자를 쓰는 것이 아니라 IS NULL or IS NOT NULL을 사용합니다.

예를들어서

 

SELECT column_names
FROM table_name
WHERE column_name IS NULL;

이렇게 쓰입니다.

 

SELECT TOP 절은 리턴 할 레코드 수를 지정합니다.

SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;

이렇게 쓰이는데 number는 출력 할 레코드 수 percent가 붙으면 50 PERCENT이면 50%를 선택합니다.

이와 동일하게

SELECT * FROM Customers
LIMIT 3;

 

OR

 

SELECT * FROM Customers
WHERE ROWNUM <= 3; 으로 쓰입니다.

 

 

 

▶INSERT

데이터를 테이블에 삽입하는 구문을 보겠습니다.

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);

이렇게 쓰입니다. 모든 열에 값을 추가하는 것은 위에서 (column1,....) 을 제외시키면 되겠습니다.

 

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');

 

Customers 테이블에 지정 컬럼에 대해서 VALUES뒤 값들을 넣는 다는 거죠.

 

▶UPDATE

업데이트 구문은 레코드를 수정합니다.

 

 

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

 이렇게 쓰입니다.

SET에는 수정할 컬럼과 값 WHERE은 마찬가지로 위에서 얘기했듯이 조건을 작성합니다.

 

주의 사항으로 WHERE절을 생략 시 모든 레코드가 업데이트 됩니다.

▶UPDATE

DELETE 구문은 레코드를 삭제합니다.

 

DELETE FROM table_name WHERE condition;

이런 형태로 쓰입니다.

주의 사항으로 WHERE절을 생략 시 모든 레코드가 삭제가 됩니다.

즉 테이블 이름을 쓰고 where절은 삭제할 조건입니다.

 

DELETE FROM Customers WHERE CustomerName='Alfreds Futterkiste'; 이렇게 고객이름이 누구누구인 것을 찾아 테이블에서 삭제하게되죠.

 

기본적인 INSERT UPDATE DELETE SELECT 에 대한 문법을 알아보았구요 다음 포스팅에서는 더욱 자세한 문법에 대해 설명드리도록 하겠습니다. 감사합니다.

 

 

 

'데이터베이스 > MySQL' 카테고리의 다른 글

eXERD 설치  (0) 2018.12.21
MySQL LEFT/RIGHT 조인  (0) 2018.12.21
MYSQL 내부 조인  (0) 2018.12.20
MYSQL 문법2  (0) 2018.12.20
MySQL 개요  (0) 2018.12.19