본문 바로가기

SQL25

oracle] GROUP BY & HAVING 1. GROUP BY - 그룹 함수는 단 한 개의 결과 값만 산출하기 때문에 그룹닏 여러 개일 경우 오류 발생 -여러 개의 결과 값을 산출하기 위해 그룹 함수가 적용될 그룹의 기준을 GROUP BY절에 기술해서 사용한다. ** 예시 -- EMPLOYEE테이블에서 성별과 성별 별 급여 평균(정수처리), 급여 합계, 인원 수 조회하고 인원수로 내림차순 정렬 SELECT DECODE(SUBSTR(EMP_NO, 8, 1), 1, '남', 2, '여') 성별, FLOOR(AVG(SALARY)) 평균, SUM(SALARY) 합계, COUNT(*) 인원수 FROM EMPLOYEE GROUP BY DECODE(SUBSTR(EMP_NO, 8, 1), 1, '남', 2, '여'); 2.HAVING -그룹 함수로 값을 구해.. 2023. 10. 25.
oracle] 함수 (function) 1. 형 변환 함수 *TO_CHAR : 날짜 혹은 숫자형 데이터를 문자형 데이터로 변환 SELECT EMP_NAME, TO_CHAR(HIRE_DATE, 'YYYY-MM-DD'), TO_CHAR(HIRE_DATE, 'YY/MON, DAY, DY') FROM EMPLOYE; SELECT EMP_NAME,TO_CHAR(SALARY, ‘L999,999,999’),TO_CHAR(SALARY, ‘000,000,000’) FROM EMPLOYEE; *TO_DATE : 숫자 혹은 문자형 데이터를 날짜형 데이터로 변환하여 반환 -- EMPLOYEE테이블에서 2000년도 이후에 입사한 사원의 사번, 이름, 입사일 조회 SELECT EMP_NO, EMP_NAME, HIRE_DATE FROM EMPLOYEE WHERE HIR.. 2023. 10. 24.
oracle]함수 (function) - 날짜 처리 함수 * SYSDATE : 시스템에 저장되어 있는 현재 날짜 반환 SELECT SYSDATE FROM DUAL; *MONTHS_BETWEEN : 인자로 날짜 두 개를 전달받아 개월 수 차이를 숫자 데이터형으로 반환 SELECT EMP_NAME, HIRE_DATE, MONTHS_BETWEEN(SYSDATE, HIRE_DATE) FROM EMPLOYEE; *ADD_MONTHS: 인자로 전달받은 날짜에 인자로 받은 숫자만큼 개월 수를 더하여 특정 날짜 반환 -- EMPLOYEE테이블에서 사원의 이름, 입사일, 입사 후 6개월이 된 날짜 조회 SELECT EMP_NAME, HIRE_DATE, ADD_MONTHS(HIRE_DATE, 6) FROM EMPLOYEE; *NEXT_DAY: 인자로 전달받은 날짜에 인자로 받은.. 2023. 10. 23.
oracle]함수(function) - 숫자 처리 함수 *ABS : 인자로 전달 받은 숫자의 절대값 반환 SELECT ABS(10.9) FROM DUAL; --결과 : 10.9 SELECT ABS(-10.9) FROM DUAL;--결과 : 10.9 SELECT ABS(10) FROM DUAL;--결과 : 10 SELECT ABS(-10) FROM DUAL;--결과 : 10 *MOD : 인자로 전달 받은 숫자를 나누어 나머지 반환. SELECT MOD(10, 3) FROM DUAL; --결과 : 1 SELECT MOD(-10, 3) FROM DUAL;--결과 : -1 SELECT MOD(10.9, 3) FROM DUAL;--결과 : 1.9 SELECT MOD(10.9, -3) FROM DUAL;--결과 : 1.9 *ROUND: 인자로 전달 받은 숫자 혹은 컬럼.. 2023. 10. 21.
oracle] 함수 (funtion) - 문자 처리 함수 * 함수 (function) : 하나의 큰 프로그램에서 반복적으로 사용되는 부분들을 분리하여 작성해 놓은 작은 서브 프로그램. - 호출하며 값을 전달하면 결과를 리턴하는 방식으로 사용. 1) LENGTH :주어진 컬럼 값/문자열의 길이 (문자 개수) 반환 2) LENGTHB : 주어진 컬럼 값/문자열의 길이(BYTE) 반환 SELECT EMP_NAME, LENGTH(EMP_NAME), EMAIL, LENGTH(EMAIL) FROM EMPLOYEE; SELECT EMP_NAME, LENGTHB(EMP_NAME), EMAIL, LENGTHB(EMAIL) FROM EMPLOYEE; 3) INSTR :지정한 위치부터 지정한 숫자 번째로 나타나는 문자의 시작 위치 반환 --EMAIL 컬럼의 문자열 중 ‘@’의 위.. 2023. 10. 20.
oracle]DML 활용하기 1. SQL(Structured Query Language) - 관계형 데이터베이스에서 데이터를 조회하거나 조작하기 위해 사용하는 표준 검색 언어로 원하는 데이터를 찾는 방법이나 절차를 기술하는게 아닌 조건을 기술하여 작성 분류 용도 명령어 DQL (Data Query Language) 데이터 검색 SELECT DML (Data Manipulation Language) 데이터 조작 INSERT, UPDATE, DELETE DDL (Data Definition Language) 데이터 정의 CREATE, DROP, ALTER TCL (Transaction Control Language) 트랜잭션 제어 COMMIT,ROLLBACK 1) SELECT : 데이터를 조회한 결과를 ResultSet이라고 하는데 S.. 2023. 10. 19.