https://www.oracle.com/kr/downloads/
무료로 다운 받고 싶다면 Database Express Edition으로 다운로드한다.
https://www.oracle.com/database/sqldeveloper/technologies/download/
java path
개발자들은 윈도우 최대 1년 내에 갈아엎는다.
자동롤백이 되지 않기 때문에 다 하고 나서 커밋을 해줘야한다.
/*사원들의 이름과 연봉을 리턴하라.*/
select ename, sal*12 + comm as "연봉"
from emp;
null이 있을 때 값이 null로 나온다.
select ename, sal*12 + nvl(comm,0) as "연봉"
from emp
order by 2;
nvl은 null이 있어도 계산하여 값을 구할 수 있다.
하드를 떼서 다른 컴퓨터에 보조 드라이브에 연결
드라이버를 백업시킨다
레지스트리 편집기 조심 또 조심..
select *
from emp
where ename like 'J%';
/*이름의 두번째 철자 중 L이 포함된 사람*/
select *
from emp
where ename like '_L%';
from dual을 가져와야 한다.
select ' Oracle ' "원본",
trim(' Oracle ') "ALL",
ltrim(' Oracle ') "Left",
rtrim(' Oracle ') "Right"
from dual;
/*반올림, 버림, 올림, 내림*/
select round(1234.5678, 1),
trunc(1234.5678, 1),
ceil(3.14),
floor(3.14)
from dual;
select 15/6, mod(15,6)
from dual;
/*mod: 나머지 구할 때 사용되는 함수*/
/*decode, case*/
select empno, ename, job, sal,
decode(job,
'MANAGER', sal*1.1,
'SALESMAN', sal*1.05,
'ANALYST', sal,
sal*1.03)"연봉인상"
from emp;
select empno, ename, job, sal,
case JOB
when 'MANAGER' then sal*1.1
when 'SALESMAN' then sal*1.05
when 'ANALYST' then sal
else sal*1.03
end "연봉인상"
from emp;
sequence는 테이블을 따로 만들어야 한다.(오라클만의 독특한 특징)
/*sequence: 자동증가*/
/*mysql : auto increment, ms-sql:identity*/
create sequence seq_tbl;
create table tbl1(
no number,
name char(10)
)
create table tbl2(
no2 number,
name2 char(10)
)
insert into tbl1 values(seq_tbl.nextval,'한글1');
insert into tbl1 values(seq_tbl.nextval,'한글2');
select * from tbl1
union
select * from tbl2
order by 1;
no가 자동으로 증가한다.