본문 바로가기

반응형

JAVA/Oracle

오라클 명령어 - group by 와 having 설명 및 예제 **칼럼값의 항목별로 나타내는 것group by 칼럼값을 종류별로 나타내는 것형식)select 칼럼명 from 테이블명 group by 칼럼명; 예)모든 사원의 평균급여를 출력select avg(esal) from emp; 직급별 모든 사원의 평균급여 출력select avg(esal) from emp group by erank;// 결과값 : 평균값만 나옴 어떤직급의 평균급여인지 까지 출력select erank, avg(esal) from emp group by erank; ** 오류발생 빈번한 경우select ename, erank, avg(esal) from emp group by erank;==> group by 절에 나타난 칼럼만이 select 절에 올 수 있다. 연습문제)근무개월수가 60개월 이.. 더보기
오라클 - references 관련 설명 및 예제 및 개체무결성과 참조무결성 ' references '==> '참조키' ,참조하라는 뜻레코드 자료형 references 참조할 테이블(참조할 레코드)dno number references dept(dno) create table emp(eno varchar(20) primary key,ename varchar(20),dno number references dept(dno),ehiredate date,etel varchar(20),esal number,erank varchar(20),eimg varchar(30),eaddr varchar(50),ejumin varchar(14)); dept 테이블과 emp 테이블을 서로 관계가 있도록 만들어 놓았습니다.관계가 있다는 말은 두개의 테이블에 서로 공동으로 들어가는 컬럼이 있다.어떤컬럼이 .. 더보기
오라클 - join 에 대한 설명 및 예제 ** join검색하고자 하는 데이터가 두 개이상의 테이블에 나누어져 있을 때 사용하는 sql 명령어의 형식 ==> 그렇다면 왜 골치 아프게 데이터를 하나의 테이블에 넣지 않고 여기,저기 분리해서 넣었을까요?왜 여러개의 테이블의 분리하여 데이터를 넣을까요? 하나의 테이블에 모든 데이터를 저장하다보면 발생하는 문제가 있을 것이다.==> '무정규화 상태' 라고함==> 데이터 중복!, 데이터의 불일치!==> '이상현상' 발생할 수도 있다데이터를 삽입할 때 '삽입이상'데이터를 갱신할 때 '갱신이상'데이터를 삭제할 때 '삭제이상' ** join ==> 형식)select 칼럼명1, 칼럼명2, ... from 테이블명1, 테이블명2, 테이블명3,.........where 조건식;(관계가 있을 경우에 한번에 검색할 수 .. 더보기
오라클 예제 - 날짜관련 함수 및 to_char 사용 예제 오라클 예제 - 날짜관련 함수 및 to char 사용 예제날짜와 관련한 함수 : month_between(날짜1, 날짜2);두 날짜사이에 개월수를 알려주는 함수날짜1 - 날짜2 개월수를 반환양수가 나오게 하려면 날짜1이 최근(큰값)이여야 한다 자신이 몇개월 살았는지 계산해보기select months_between(sysdate,'1991-11-28') from dual; 소수점 없애기select round(months_between(sysdate,'1991-11-28')) from dual; 연습)근무개월수가 60개월 이상이고 남자 근무자들 중에서울에 거주하는 사원들에게 상여금을 지급하고자 한다.상여금은 연봉의 5%이다.대상자의 사원번호, 사원명, 부서명, 상여금, 근무개월수, 입사일을 출력합니다.단, .. 더보기
오라클 예제 - 문자열 관련 함수를 이용한 자료 검색 예제 오라클이 제공하는 문자열 관련 함수를 이용한 자료 검색 예제 문자열 처리 함수trim, ltrim, rtrimsubstr(문자열값, 시작위치, 글자수) 위치는 1부터 시작instr(문자열값, 찾고자하는 글자) lpad, rpad데이터 출력시에 폭(자리)를 잡아 출력하되 빈칸은 특정글자로 채우는 기능형식)lpad(데이터값, 폭, 채울글자) 예)lpad(5000,10,'*');[*][*][*][*][*][*][5][0][0][0] // 결과값 : ******5000 rpad('hello',12,'*');[h][e][l][l][o][*][*][*][*][*][*][*] // 결과값 : hello******* replace특정 문자열의 내용을 바꾸기 위한 기능 형식)(문자열값, 원래문자, 바꿀문자)예)repla.. 더보기
오라클 예제 - lower() 와 trim을 이용한 sql 명령어 연습문제 /*근무자의 이름을 입력받아 해당 근무자의 사원번호, 사원명, 아이디, 연봉을 출력하는 프로그램을 작성하시오.단 사원명이, 외국인인 경우는 대소문자 구별없이 찾아지도록 한다.*/ import java.util.Scanner;import java.sql.*; class SqlTest2{public static void main(String[] args) {Scanner sc = new Scanner(System.in); System.out.print("근무자의 이름을 입력하시오");String input = sc.next(); //String sql = "사원번호 : " + name + "\t" + "사원명 : " + name + "\t" + "아이디 : " + substr(email, 1, in.. 더보기
오라클이 제공하는 문자열 관련 함수를 이용한 자료 검색 오라클이 제공하는 문자열 관련 함수를 이용한 자료 검색 ** 문자열과 관련한 함수trim 양쪽공백지우기ltrim 왼쪽공백지우기rtrim 오른쪽공백지우기 upper 대문자로바꾸기lower 소문자로바꾸기 substr(컬럼명, 시작인덱스, 글자수) // 매개변수가 3개 들어감시작인덱스는 1부터 시작예) select substr('abcdefg' , 1, 2) from dual;결과값 ==> ab 연습)우리회사에 근무하는 여성근무자들한테 특별휴가를 주려고 한다.대상자의 사원번호, 사원명, 부서명을 검색하시오.단, 부서명순으로 검색하되 동일할때에는 사원명순으로 나타내시오. select no, name, dname from emp where substr(jumin,8,1) = '2' order by dname, n.. 더보기
오라클이 제공하는 수학관련 함수를 이용한 자료 검색 오라클이 제공하는 수학관련 함수를 이용한 자료 검색 ** 수학과 관련된 함수sum, max, min, avg, count 예)모든사원의 급여 총액을 검색select sum(sal) from emp; 근무자들의 평균 급여를 검색select avg(sal) from emp; 최고급여액 금액select max(sal) from emp; round(반올림), ceil(올림수), floor(버림수) 예)모든사원의 평균 급여 검색select floor(avg(sal)) 평균급여 from emp; 127.5789select round(127.5678, 1) from dual; // 결과값 : 127.6 // ,1 은 첫째자리까지 표시 하고 싶다는 말로 둘째자리에서 반올림 한다. select round(25697, -.. 더보기

반응형