본문 바로가기

Dev. Handbook/SQL, Oracle, MariaDB9

[MariaDB] Data Type, 데이터 타입, 데이터형, 자료형 10.3, 10.4 데이터베이스 설계를 위해서는 저장해야 할 정보의 자료를 분석하여 적절한 데이터 타입을 선택해야 합니다. 기본적인 데이터 타입은 크게 숫자형, 문자형, 날짜와 시간, 기타 특수 형으로 나눌 수 있습니다. 그중에서 숫자와 문자는 자주 사용하는 데이터 타입으로 데이터 타입 간에 지원하는 범위를 알고 있어야만 저장하려는 데이터 저장 범위에 맞게 사용할 수 있습니다. MariaDB의 경우 숫자형과 문자형의 경우 아주 세부적으로 범위를 나누어 저장할 수 있도록 데이터 타입을 지원하고 있습니다. 가능하면 주요한 데이터형의 지원 범위는 기억해두는 것이 좋기에 정리하여 둡니다. 자주 사용하는 데이터형의 경우 ● 와 함께 행의 글자에 색상을 변경하였습니다. 1. 숫자 데이터 타입 데이터 형식 Bytes 범위 설명 BIT(.. 2022. 11. 9.
[MySQL, MariaDB] MySQL, MariaDB 버전별 호환성 MySQL과 MariaDB는 그 뿌리가 같기 때문에 두 DBMS에 호환성은 매우 높은 편입니다만 버전이 업데이트되면서 좀 더 세부적인 기능에서 지원 여부가 차이가 나고 있습니다. 그러나 기본적인 기능은 두 DBMS가 호환이 된다고 볼 수 있습니다. MariaDB와 MySQL은 늘 비교가 되곤 하는데 웹에서 검색되는 결과도 혼용이 가능합니다. 예를 들어 MariaDB 10.2를 사용하고 있는데 어떤 기능이나 설명이 MySQL로만 찾을 수 있는 경우 MySQL 5.7 버전을 참조하면 어느 정도 활용이 가능합니다. 두 DBMS의 버전을 비교하고 있는 자료가 잘 나오지 않지만 우연히 검색하게 되어 참고용으로 정리해 둡니다. MySQL, MariaDB 버전별 호환성 MySQL MariaDB MySQL 5.1 Ma.. 2022. 11. 5.
[Oracle] 내장함수 : 집계함수(그룹함수) Oracle에서 사용할 수 있는 내장함수 가운데서 GROUP BY절과 함께 사용하기도 해서 그룹함수라고도 불리는 집계함수들이 있습니다. 이 함수는 여러 행의 그룹을 묶어서 단일 행을 반환합니다. 이 집계 함수들은 다음과 같습니다. 1. 집계함수 (그룹함수) 함수명 양식 기능 설명 COUNT COUNT(expr) - 쿼리에서 반환한 행 수를 반환 - 컬럼명을 지정하면 null이 아닌 행 수를 반환 - 컬럼명에 DISTICT를 지정하면 중복을 제외한 행 수를 반환 - 별표(*)를 지정하면 중복 및 null을 포함한 모든 행을 반환 SUM SUM(expr) - 쿼리에서 반환한 행들의 합계 값을 반환 - 숫자형 컬럼에 사용 AVG AVG(expr) - 쿼리에서 반환한 행들의 평균 값을 반환 - 숫자형 컬럼에 사.. 2022. 5. 23.
[Oracle] 내장함수 : 비교함수, 디코딩 함수 Oracle에서 사용할 수 있는 내장 함수에서 비교적 자주 사용하는 비교 함수와 디코딩 함수들은 다음과 같습니다. 1. 비교함수 함수명 양식 기능 설명 GREATEST GREATEST(expr1, expr2, ...) - 매개변수 중 가장 큰 값을 반환 - 첫번째 값의 데이터 타입을 기준으로 나머지 매개변수의 데이터 타입을 변환하여 비교함 - null이 있으면 무조건 null을 반환 LEAST LEAST(expr1, expr2, ...) - 매개변수 중 가장 작은 값을 반환 - 첫번째 값의 데이터 타입을 기준으로 나머지 매개변수의 데이터 타입을 변환하여 비교함 1.1 GREATEST(expr1, expr2, ...) GREATEST(expr1, expr2, ...) 매개변수 중 가장 큰 값을 반환 매개변.. 2022. 5. 22.
[Oracle] 내장 함수 : NULL 관련 함수 Oracle에서 NULL은 중요하게 다루어야 할 값입니다. 덕분에(?) NULL을 다룰 수 있는 다수의 함수들이 있습니다. NULL 관련 함수는 다음과 같습니다. 1. NULL 관련 함수 함수명 양식 기능 설명 NVL NVL(expr1, expr2) expr1 != null : expr2 반환 expr1 = null : expr2 반환 NVL2 NVL2(expr1, expr2, expr3) expr1 != null : expr2 반환 expr1 = null : expr3 반환 COALESCE COALESCE(expr1, expr2, ...) expr# 가운데서 null이 아닌 첫 번째 표현식(expr#)을 반환 NULLIF NULLIF(expr1, expr2) expr1 = expr2 : null 반환 .. 2022. 5. 14.
[Oracle] 내장 함수 : 형 변환 함수 Oracle에서 사용할 수 있는 형 변환 함수들은 다음과 같습니다. 1. 형 변환 함수 함수명 양식 기능 설명 TO_CHAR TO_CHAR(num or date, format) 숫자(num) or 날짜(date)를 형식에 맞는 문자열로 변환 TO_NUMBER TO_NUMBER(str, format) 형식(format)의 문자열(str)을 숫자로 변환 TO_DATE TO_TIMESTAMP TO_DATE(str, format) TO_TIMESTAMP(str, format) 형식(format)의 문자열(str)을 날짜로 변환 형식(format)의 문자열(str)을 TIMESTAMP로 변환 BIN_TO_NUM BIN_TO_NUM(2진수) 콤마로 구분된 2진수를 10진수로 변환 NUMTODSINTERVAL NUM.. 2022. 5. 13.
[Oracle] 내장 함수 : 날짜 함수, 시간 함수 Oracle에서 사용할 수 있는 날짜 함수와 시간 함수들은 다음과 같습니다. 1. 날짜 함수, 시간 함수 함수명 양식 기능 설명 SYSDATE SYSTIMESTAMP SYSDATE SYSTIMESTAMP 현재 일자와 시간을 DATE형으로 반환 현재 TIMESTAMP를 반환 CURRENT_DATE CURRENT_TIMESTAMP CURRENT_DATE CURRENT_TIMESTAMP 현재 세션의 일자와 시간을 DATE형으로 반환 현재 세션의 TIMESTAMP를 반환 ADD_MONTHS ADD_MONTHS(date, int) 날짜(date)에 숫자(int)만큼의 월을 더한 날짜를 반환 EXTRACT EXTRACT(format FROM DATE '날짜') 날짜에서 형식(format)의 값을 구한다 형식: YE.. 2022. 5. 10.
[Oracle] 내장 함수 : 숫자 함수, 수학 함수 Oracle에서 사용할 수 있는 숫자, 수학 함수들은 다음과 같습니다. 1. 숫자 함수, 수학 함수 함수명 양식 기능 설명 ABC ABS(n) 절대값 반환 SIN, COS, TAN ASIN, ACOS, ATAN ATAN2 SIN(n), COS(n), TAN(n) ASIN(n), ATAN(n), ATAN(n) ATAN2(n1, n2) 삼각함수 관련함수 n은 라디안값으로 입력 라디안 : 각도 * 2 * PI / 360 CEIL FlOOR ROUND CEIL(n) FlOOR(n) ROUND(n, i) 올림 버림 반올림, i+1 자리에서 반올림, i기본값은 1 EXP LN LOG EXP(n) LN(n) LOG(base, n) e의 n제곱 값을 반환 자연 로그 함수로 밑수가 e인 로그함수 base를 밑수로 하는 .. 2022. 5. 2.
[Oracle] 내장 함수 : 문자열 함수 일람 Oracle은 많은 내장 함수를 가지고 있습니다. 그중에서 문자열을 조작하는 함수들 가운데 자주 사용되는 것들은 아래와 같습니다. 1. 문자열 함수 목록 함수명 양식 기능 설명 ASCII CHR ASCIISTR UNISTR ASCII(char) CHR(num) ASCIISTR(한글) UNISTR('유니코드값') 문자의 아스키 코드값 반환 아스키 코드값(숫자)에 해당하는 문자 반환 입력한 글자에 해당하는 유니코드 값을 16진수로 반환 유니코드 값을 문자로 반환 LENGTH LENGTHB LENGTH(str) LENGTH(str) 문자열의 길이를 반환 문자열의 BYTE길이를 반환, 한글 1자는 3BYTE CONCAT || CONCAT(str1, str2) || 2개의 문자열만 연결해서 반환 다수의 문자열을 .. 2022. 4. 28.