My SQL (2) - TCP SCHOOL

bin1225·2022년 1월 2일
0

DATABASE

목록 보기
4/19

타입

MySQL에서 제공하는 기본 타입은 다음과 같다.

  1. 숫자 타입

  2. 문자열 타입

  3. 날짜와 시간 타입

숫자 타입

  1. 정수 타입(integer types)

  2. 고정 소수점 타입(fixed-point types)

  3. 부동 소수점 타입(floating-point types)

  4. 비트값 타입(bit-value type)

정수 타입(integer types)

고정 소수점 타입(fixed-point types)

MySQL에서 고정 소수점 타입인 DECIMAL은 실수의 값을 정확하게 표현하기 위해 사용된다.

DECIMAL(M,D)

M은 소수 부분을 포함한 실수의 총 자릿수를 나타내며, 최댓값은 65이다.

D는 소수 부분의 자릿수를 나타내며, D가 0이면 소수 부분을 가지지 않는다.

부동 소수점 타입(floating-point types)

MySQL에서 부동 소수점 타입인 FLOAT과 DOUBLE은 실수의 값을 대략적으로 표현하기 위해 사용된다.

QL 표준에서 FLOAT는 정밀도에 필요한 최소한의 비트 수를 명시할 수 있습니다.

표준
FLOAT(P) // P는 비트수  0~24는 FLOAT, 25~53은 DOUBLE

비표준
FLOAT(M,D)

DOUBLE(M,D)

//M은 소수 부분을 포함한 실수의 총 자릿수를 나타내며, D는 소수 부분의 자릿수를 나타냅니다.

비트값 타입(bit-value type)

BIT(M)

문자열 타입

  1. CHAR와 VARCHAR
    - BINARY와 VARBINARY

  2. ENUM

  3. SET

CHAR와 VARCHAR

CHAR와 VARCHAR는 둘다 문자열 데이터를 저장할 수 있는 타입이지만,
저장 방식과 추출 방식 그리고 최대 길이를 다루는 방식에서 차이점을 가진다.

CHAR는 문자열을 길이가 한 번 설정되면 그대로 고정되는 고정 길이,
VARCHAR는 문자열을 길이가 고정되지 않는 가변 길이의 문자열로 다룹니다.

- BINARY와 VARBINARY

BINARY와 VARBINARY는 각각 CHAR와 VARCHAR과 거의 비슷합니다.

다만 BINARY와 VARBINARY는 문자 집합이 아닌 바이너리(binary) 데이터를 저장할 때 사용된다는 점만이 다릅니다.

ENUM

ENUM은 미리 정의한 집합 안의 요소 중 하나만을 저장할 수 있는 타입이다.

ENUM을 사용하면 가독성을 높일 수 있으며, 특정 숫자에 문자열로 의미를 부여할 수 있다.

ENUM('데이터값1','데이터값2',...)

###SET
SET은 미리 정의한 집합 안의 요소 중 여러 개를 동시에 저장할 수 있는 타입이다.

SET 목록 집합은 최대 64개의 SET 데이터를 포함할 수 있다.

SET('데이터값1', '데이터값2', ...)

날짜와 시간 타입

MySQL은 날짜와 시간에 관한 다양한 형태의 타입을 제공합니다.

  • DATE : 날짜

  • DATETIME : 날짜, 시간

  • TIMESTAMP : 날짜와 시간을 나타내는 타임스탬프

    -> 사용자가 별다른 입력을 주지 않으면 마지막으로 입력되거나 저장된 시간이 저장된다. 데이터의 최종 변경 시각을 저장하고 확인하는 데 유용하게 사용된다.

  • TIME : 시간

  • YEAR : 연도

유효하지 않은 시간 날짜 등은 0 으로 표시된다.

연산자

산술연산자

대입연산자

대입 연산자는 '=' , ':=' 두 가지가 있다.
MySQL 에서 = 는 상황에 따라 대입 연산자와 비교 연산자 두 가지로 해석된다.
따라서 작성자의 의도와는 다르게 해석될 여지가 있다.
그러므로 대입 연산자로는 ':=' 를 사용하자.

비교 연산자

논리 연산자

출처: http://tcpschool.com/mysql/mysql_operator_logic

비트 연산자

0개의 댓글