MySQL chapter 07. SQL 고급 7.1 MySQL의 데이터 형식 // 추가
DATABACE/MYSQL 2018. 2. 28. 09:15 |MySQL chapter 07. SQL 고급
7.1 MySQL의 데이터 형식
7.1.1 MySQL에서 지원하는 데이터 형식의 종류
- 숫자 데이터 형식
// DECIMAL 데이터 형식은 정확한 수치를 저장하게 되고,
// FLOAT, REAL은 근사치의 숫자를 저장한다.
// 대신 FLOAT, REAL은 상당히 큰 숫자를 저장할 수 있다는 장점이 있다.
// 소수점이 들어간 실수를 저장하려면 되도록 DECIMAL을 사용하는 것이 바람직하다.
ex)
-999999.99부터 +999999.99까지의 숫자를 저장할 경우에는 DECIMAL(9,2)로 설정하면 된다.
// 부호 없는 정수를 지정할 때는 UNSIGNED 예약어를 붙여주면 된다.
// 부호 없는 정수로 지정하면 최소값+최대값
- 문자 데이터 형식
// CHAR 형식은 고정길이 문자형으로 자릿수가 고정되어 있다.
// 예를 들어 CHAR(100)에 'ABC' 3글자만 저장해도 100자리를 모두 확보한 후에 3자리를 사용하고 뒤의 97자리는 낭비하게 된다
// VARCHAR 형식은 가변길이 문자형으로 VARCHAR(100)에 'ABC' 3글자를 저장할 경우 3자리만 사용하게 된다.
// 그래서 공간을 효율적으로 운영할 수 있다.
// 하지만, CHAR형식으로 설정하는 것이 INSERT/UPDATE 시에 일반적으로 더 좋은 성능을 발휘한다.
// BINARY와 VARBINARY는 바이트 단위의 이진 데이터 값을 저장하는데 사용된다.
// TEXT 형식은 대용량의 글자를 저장하기 위한 형식으로 필요한 크기에 따라서 사용한다.
// BLOB(Binary Large Object)은 사진 파일, 동영상 파일, 문서 파일 등의 대용량의 이진 데이터를 저장하는데 사용될 수 있다.
// BLOB도 필요한 크기에 따라서 사용한다.
// ENUM은 열거형 데이터를 쓸 때 사용될 수 있는데 예로 요일(월~일)을 ENUM 형식으로 설정할 수 있다.
- 날짜와 시간 데이터 형식
- 기타 데이터 형식
- LONGTEXT, LONGBLOB
// LOB(Large Object : 대량의 데이터)을 저장하기 위해서 사용한다
// 지원되는 데이터 크기는 약 4GB의 파일을 하나의 데이터로 저장할 수 있다.
// 예로 장편 소설과 같은 큰 텍스트 파일이라면, 그 내용을 전부 LONGTEXT 형식으로 지정된 하나의 컬럼에 넣을 수 있고
// 동영상 파일과 같은 큰 바이너리 파일이라면 그 내용을 전부 LONGBLOB 형식으로 지정된 하나의 칼럼에 넣을 수 있다.
7.1.2 변수의 사용
1 2 | SET @변수이름 = 변수의 값; -- 변수의 선언 및 값 대입 SELECT @변수이름 ; -- 변수의 값 출력 | cs |
1 2 3 4 5 6 7 8 9 10 11 | USE sqldb; SET @myVar1 = 5; SET @myVar2 = 3; SET @myVar3 = 4.25; SET @myVar4 = '가수 이름 ==> '; SELECT @myVar1; SELECT @myVar2 + @myVar3; SELECT @myVar4, Name FROM usertbl WHERE height > 180; | cs |
1 2 | CAST ( expression AS 데이터형식 [ (길이) ] ) CONVERT ( expression , 데이터형식 [ (길이) ] ) | cs |
'DATABACE > MYSQL' 카테고리의 다른 글
MySQL chapter 07. SQL 고급 7.3 SQL 프로그래밍 (0) | 2018.03.05 |
---|---|
MySQL chapter 07. SQL 고급 7.2 조인 (0) | 2018.03.05 |
MySQL chapter 06. SQL 기본 6.2 데이터의 변경을 위한 SQL문 // 추가 (0) | 2018.02.27 |
MYSQL 단축키 (0) | 2018.02.27 |
발표2 (0) | 2018.02.19 |