DataBase/Oracle
-
SQL - 집계 함수DataBase/Oracle 2022. 1. 19. 19:31
SQL - 집계 함수 하나 이상의 행을 그룹으로 묶어 연산하며 총합, 평균 등을 하나의 컬럼으로 리턴하는 함수 WHERE 절에서 못쓴다 구분 설명 SUM 그룹의 누적 합계를 리턴 한다. AVG 그룹의 평균을 리턴 한다 COUNT 그룹의 총 개수를 리턴 한다. MAX 그룹의 최대값을 리턴 한다 MIN 그룹의 최소값을 리턴 한다 COUNT COUNT(* | 컬럼명) : 행의 갯수를 헤아려서 리턴 COUNT(DISTINCT 컬럼명) : 중복을 제거한 행 갯수 리턴 COUNT(*) : NULL을 포함한 전체 행 갯수 리턴 COUNT(컬럼명) : NULL을 제외한 실제 값이 기록된 행 갯수 리턴
-
SQL - NULL 관련 함수, 선택 함수DataBase/Oracle 2022. 1. 19. 19:23
SQL - NULL 관련 함수 NVL(NULL, 대체값) 반환 값이 NULL일 경우에 대체 값을 제공 --AGE가 NULL이면 +3해도 NULL값이 나온다 SELECT AGE + 3 FROM MEMBERS; SELECT NVL(AGE, 0) FROM MEMBERS; -- AGE가 NULL이면 0값으로 대체 NVL2(입력값, NOTNULL 대체값, NULL 대체값) NVL에서 조건을 하나 더 확장 -- AGE값을 100/AGE로 바꾸는데 NULL일 경우 0으로 대체 SELECT NVL2(AGE, 100/AGE, 0) FROM MEMBERS; NULLIF(값1, 값2) 두 값이 같은 경우 NULL 그렇지 않는경우 첫번째 값 반환 SELECT NULLIF(AGE, 19) FROM MEMBERS; -- AGE가..
-
SQL - 형식 변환 함수와 포맷 문자DataBase/Oracle 2022. 1. 19. 19:21
SQL - 형식 변환 함수와 포맷문자 숫자 - > 문자열 , 문자열 -> 숫자 포맷문자 설명 9 숫자 0 빈자리를 채우는 문자 $ 앞에 $ 표시 , 천 단위 구분자 표시 . 소수점 표시 -- 숫자 -> 문자열 포맷방식이 숫자보다 길어야 한다 SELECT TO_CHAR(12345678, '$99,999,999,999.99') FROM DUAL;-- 결과 $12,345,678.00 SELECT TO_CHAR(1234) FROM DUAL;-- 1234 출력 SELECT TO_CHAR(1234, '99999') FROM DUAL;-- _1234 출력 (_은 빈칸을 대신하여 표현했다) SELECT TO_CHAR(1234, '00000') FROM DUAL;-- 01234 출력 SELECT TO_CHAR(1234,..
-
SQL - 날짜 내장 함수DataBase/Oracle 2022. 1. 19. 19:01
SQL - 날짜 내장 함수 EXTRACT, ADD_MONTH, MONTHS_BETWEEN, NEXT_DAY, LAST_DAY, ROUND/TRUNC SYSDATE, CURRENT_DATE, SYSTIMESTAMP, COURRENT_TIMESPAMP - 현재 시간을 얻는 함수 SELECT SYSDATE, CURRENT_DATE, SUSTIMESTAMP, CURRENT_TIMESTAMP FROM DUAL; 날짜 출력 방식 변경 ALT SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS; --년월일시분초 출력방식 변경 EXTRACT - 날짜 추출함수 EXTRACT(YEAR/MONTH/DAY/HOUR/MINUTE/SECOND FROM ...) -- EMPLOYEE 테이..
-
SQL - 숫자 내장 함수DataBase/Oracle 2022. 1. 19. 18:58
SQL - 숫자 내장 함수 ABS, SIGN, ROUND, MOD, POWER, SQRT 절댓값을 구하는 함수 - ABS(N) SELECT ABS(35), ABS(-35) FROM DUAL; 음수/양수를 알려주는 함수 - SIGN(N) SELECT SIGN(35), SIGN(-35), SIGN(0) FROM DUAL; -- 1 -1 0 출력 숫자의 반올림 값을 알려주는 함수 - ROUND(N, I) SELECT ROUND(123.456), ROUND(123.456, 0), ROUND(123.456, 2), ROUND(123.456, -2) FROM DUAL; 숫자의 몫과 나머지 값을 반환하는 함수 - TRUNK(N1,N2), MOD(N1,N2) SELECT TRUNC(17/5) 몫, MOD(17,5) 나..
-
SQL - 문자열 내장 함수DataBase/Oracle 2022. 1. 19. 18:51
SUBSTR, CONCAT, TRIM, LOWER, UPPER, REPLACE, TRANSLATE(), LPAD, INITCAP, INSTR, LENGTH SUBSTR - 문자열 추출 함수 SUBSTR(문자열, 시작위치, 길이) 컬럼이나 문자열에서 지정한 위치로부터 지정한 개수의 문자열을 잘라서 리턴하는 함수 SELECT SUBSTR('SHOWMETHEMONEY', 5, 2), SUBSTR('SHOWMETHEMONEY', 7), SUBSTR('SHOWMETHEMONEY', -8, 3), SUBSTR('쇼우 미 더 머니', 2, 5) FROM DUAL; CONCAT - 문자열 덧셈 함수 CONCAT('문자열1', '문자열2') 문자열 혹은 컬럼 두 개를 입력받아 하나로 합친 후 리턴 SELECT CONCA..
-
SQL - 연산자를 통한 데이터 조회( 연결 연산자, 논리 연산자, 비교 연산자 )DataBase/Oracle 2022. 1. 19. 18:44
연산자를 통한 데이터 조회( 연결 연산자, 논리 연산자, 비교 연산자 ) 연결 연산자 연결 연산자인 '||'를 이용하여 여러 컬럼을 연결하거나 컬럼과 리터럴을 연결할 수 있다. -- 컬럼과 컬럼 연결 SELECT EMP_ID || EMP_NAME || SALARY-- 컬럼과 컬럼 연결 ,EMP_NAME || '의 월급은 ' || SALARY || '원 입니다.' -- 컬럼과 리터럴 연결 FROM EMPLOYEE; 논리 연산자 여러 개의 제한 조건 결과를 하나의 논리 결과로 만들어준다. 연산자 설명 AND 여러 조건이 동시에 TRUE일 경우에만 TRUE값 반환 OR 여러 조건들 중에 어느 하나의 조건만 TRUE이면 TRUE값 반환 NOT 조건에 대한 반대값으로 반환(NULL은 예외) 비교 연산자 비교 결과..
-
SQL - SELECTDataBase/Oracle 2022. 1. 19. 18:02
SQL - SELECT Result Set 데이터를 조회한 결과를 Result Set 이라고 한다. SELECT 구문에 의해 반환된 행들의 집합을 의미 0개 이상의 행이 포함된다. 여러 조건에 따라 특정 테이블의 행,컬럼을 조회할 수 있다. 특정 컬럼 조회 테이블의 특정 컬럼만 조회 할 수 있다. SELECT EMP_ID , EMP_NAME FROM EMPLOYEE; 특정 행 조회 WHERE 조건을 이용하여 특정 행을 조회 SELECT * FROM EMPLOYEE WHERE JOB_CODE = 'J1'; 특정 행과 컬럼을 조회 SELECT EMP_ID , EMP_NAME , DEPT_CODE , SALARY FROM EMPLOYEE WHERE SALARY >= 3000000; AS 해당 컬럼의 NAME을..