본문 바로가기

Oracle

Oracle 5 테이블 3개연결! Ansi표준 employees와 jobs, departments를 연결 Step1.테이블 2개연결 select e.*,j.* from employees e inner join jobs j on e.job_id=j.job_id Step2.테이블 3개 연결 select e.last_name,e.first_name,j.job_title,d.department_name from employees e inner join jobs j on e.job_id=j.job_id inner join departments d on e.department_id=d.department_id Oracle에서 3테이블 연결 select e.first_name,e.last_name,j.job_title,d.depar.. 더보기
Oracle 4 drop table 테이블명; //삭제하면 쓰레기통으로 감. 따라서 purge를 사용해서 쓰레기통의 내용까지 비워줌 drop table 테이블명 purge; select name, id , trunc(months_between(sysdate,to_date(substr(id,1,6),'rrmmdd'))/12) from te; Q.deptno별로 10,20,30 (count,decode나case사용) totalcount dept10 dept20 dept30 select count(decode(deptno,10,deptno)) "dept10", //deptno라는 임의의값을 넣어서 카운드시켜준다. (10이아니면 값을 넣어주지 않으므로 나머지는 자동null값이 됨.(카운드 안함) count(decode(dept.. 더보기
Oracle 3 col b_year format a10; select substr(hiredate,1,2) b_year from emp select ltrim(rtrim(mail, substr(mail,instr(mail,'.'))), substr(mail,1,instr(mail,'@'))) from t1 ->회사명뽑기 최종변경: select substr(mail,1,instr(mail,'@')-1) ID, //instr은 해당문자를 만날떄까지의 자리수 ltrim(rtrim(mail, substr(mail,instr(mail,'.'))) ,substr(mail,1,instr(mail,'@'))) com1, substr(mail,instr(mail,'.')+1) com2 from t1 컬럼의 간격을 조정하기 위해 col .. 더보기
Oracle 2-2 문자처리 함수 select upper('abecdef'), lower('abcdef') ,initcap('abddsd') from dual; upper: 대문자로 변환 lower : 소문자로 변환 select empno, ename, job from emp where lower(job)='manager'; //컬럼의 속성이 대문자일경우 검색시 lower(컬럼명)을 쓰면 소문자로 검색이 가능하다. 반대로 upper('manager')해줘도 된다. initcap:맨앞글자만 대문자 나머지 대 소문자로 처리 select length('안녕하세요') from dual; //글자의 길이 추출 select lengthb('안녕하세요') from dual;//글자의 바이트 추출 substr:문자열의 일부만 추출하는 함.. 더보기
Oracle 2 AND, OR, NOT, BETWEEN, IN 조건> mgr이 7800이상이고 job이 MANAGER인 데이터추출 select * from emp where mgr>=7800 ans job='MANAGER' 조건> 부서가 10번 이거나 직급이 MANAGER인 자료를 추출 select * from emp where deptno=10 or job='MANAGER' select * from emp where not deptno=10 select * from emp where deptno10 select * from emp where comm is null; //null은 is로 뽑는다. select * from emp where comm is not null; select last_name, job_id, s.. 더보기