Programming/데이터베이스 관리(DBMS) \ 관리자(DBA)

mysql(데이터 베이스)/ 데이터 타입 및 추가 키워드

esoog Polaris 2023. 7. 6. 18:12
반응형

# 데이터 타입

 

수 타입

정수는 INT 사용

실수는 DECIMAL(전체자릿수, 소수점자릿수) 사용.

데이터 용량 및 손실을 고려해서.

 

문자형

CHAR(1~255)는 고정길이 문자열. 고정된 자릿수 만큼 기본 용량 차지.

VARCHAR(1~65535)는 가변길이 문자열. 입력 값에 따른 가변 용량. 단, 성능이 CHAR보다 약할 수.

 

텍스트형

LONGTEXT 사용. 최대 4GB 지원.

 

이진데이터

LONGBLOB 사용. 최대 4GB 사진, 동영상, 문서 파일 등의 이진데이터 저장 가능.

 

날짜는 DATE : YYYY-MM-DD 형식 저장

날짜+시간은 DATETIME : YYYY-MM-DD HH:MM:SS 형식 저장

 

JSON데이터 : {속성: 값(열)}  형식.

데이터를 JSON으로 변환하려면,

 

USE 데이터베이스

SELECT JSON_OBJECT('속성1',열1,'속성2',열2,...) AS '별칭'
FROM 테이블
WHERE 조건

 

 

 

 

# 추가 키워드

 

SET @변수명 = 리터럴; (변수 선언 및 초기화)

SELECT @변수명; (변수 값 출력)
JOIN: 두 개 이상의 테이블을 묶어서 하나의 결과 집합으로 만듦.

INNER JOIN(기본 JOIN) : 교집합으로 보면 됨.
:

SELECT A.필드1, B.필드1, A.필드2,... AS '별칭'
FROM 기준 테이블 A
INNER JOIN 목적 테이블 B
ON A.동일비교필드 = B. 동일비교필드

=> 목적 테이블로 합쳐짐.
=> 순서를 설계하여, 연속적으로 고리를 이어서 중첩 조인으로 사용할 수 있다.




OUTER JOIN(외부 조인) : 합집합으로 보면 됨.

:

SELECT A.필드1, B.필드1, A.필드2,... AS '별칭'
FROM 테이블 A
LEFT OUTER JOIN 테이블 B
ON A.동일비교필드 = B. 동일비교필드

=> 여기서 LEFT는 왼쪽 테이블이 기준이 되어 모두 출력.
=> LEFT, RIGHT, FULL 등이 있음.




UNION :  단순히 쿼리문을 행으로 합치는 것.

SELECT A
UNION ALL
SELECT B

=> 단, 1. 열의 개수 동일해야, 2. 호환되는 데이터 형식이어야 함.
728x90