select * from tabs;
select * from dept;
select * from emp;
select * from emp where ename like 'S%';
select * from emp where ename like '_L%';
select * from emp where ename not like '%AM';
select ename, sal, sal*12+comm as annsal, comm from emp;
select ename, sal, sal*12+comm as annsal, comm from emp where comm is not null;
select empno, ename, sal, deptno from emp where deptno = 10
union
select empno, ename, sal, deptno from emp where deptno = 20;
select empno, sal, ename, deptno from emp where deptno = 10
union
select empno, ename, sal, deptno from emp where deptno = 20;
select empno, ename, sal, deptno from emp
INTERSECT
select empno, ename, sal, deptno from emp where deptno = 10;
select ename, upper(ename), lower(ename), initcap(ename) from emp;
select ename, length(ename) from emp;
select job, substr(job,1,2), substr(job,3,2), substr(job,5) from emp;
select
instr('HELLO, ORACLE!', 'L') as instr_1,
instr('HELLO, ORACLE!', 'L', 5) as instr_2,
instr('HELLO, ORACLE!', 'L', 2, 2) as instr_3
from dual;
select '010-1234-5678' as replace_before,
replace('010-2345-6789', '-', ' ') as replace_1,
replace('010-3456-7890', '-') as replace_2
from dual;
select 'Oracle',
lpad('Oracle', 10, '#') as lpad_1,
rpad('Oracle', 10, '*') as rpad_1,
lpad('Oracle', 10) as lpad_2,
rpad('Oracle', 10) as rpad_2
from dual;
select
rpad('971225-', 14, '*') as rpad_ssn,
rpad('010-1234-', 13, '*') as rpad_phone
from dual;
select '[' || trim(' - - Oracle - - ') || ']' as trim from dual;
select
round(1234.5678) as round,
round(1234.5678, 0) as round_0,
round(1234.5678, 1) as round_1,
round(1234.5678, 2) as round_2,
round(1234.5678, -1) as round_minus1,
round(1234.5678, -2) as round_minus2
from dual;
select sal,
to_char(sal, '$999,999') as sal_$,
to_char(sal, 'L999,999') as sal_L,
to_char(sal, '999,999.00') as sal_1,
to_char(sal, '000,999,999.00') as sal_2,
to_char(sal, '000999999.99') as sal_3
from emp;
select sysdate,
to_char(sysdate, 'MM') as MM,
to_char(sysdate, 'MON') as MON,
to_char(sysdate, 'MONTH') as MONTH,
to_char(sysdate, 'DD') as DD,
to_char(sysdate, 'DY') as DY,
to_char(sysdate, 'DAY') as DAY
from dual;
select sysdate,
to_char(sysdate, 'HH24:MI:SS') as HH24MISS,
to_char(sysdate, 'HH12:MI:SS AM') as HHMISS_AM,
to_char(sysdate, 'HH24:MI:SS PM') as HHMISS_PM
from dual;
select empno, ename, sal, comm, sal+comm, nvl(comm, 0), sal+nvl(comm, 0) from emp;
select empno, ename, sal, comm, nvl2(comm, 'O', 'X'), nvl2(comm, sal*12+comm, sal*12) as annsal from emp;
select empno, ename, job, sal,
decode(job,
'MANAGER', sal*1.1,
'SALESMAN', sal*1.05,
'ANALYST', sal,
sal*1.03) as upsal
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 as upsal
from emp;
select sum(sal) from emp;
select
sum(DISTINCT sal),
sum(all sal),
sum(sal)
from emp;
select ename, sum(sal) from emp;
select ename, sum(sal) from emp group by ename;
select count(*) from emp where deptno = 30;
select max(sal) from emp where deptno = 10;
select min(sal) from emp where deptno = 10;
select max(hiredate) from emp where deptno = 20;
select round(avg(sal)) from emp where deptno = 30;
select deptno, job, sum(sal) from emp group by rollup(deptno, job);
select deptno, job, avg(sal) from emp group by deptno, job order by 1, 2;
select deptno, job, avg(sal) from emp
group by deptno, job
having avg(sal) >= 2000
order by 1, 2;
select deptno, job, avg(sal) from emp
where sal <= 3000
group by deptno, job
having avg(sal) >= 2000
order by 1, 2;
select deptno,
listagg(ename, ', ')
within group(order by sal desc) as enames
from emp
group by deptno;
select * from employees;
select LAST_NAME, SALARY from employees where SALARY >= 12000;
select LAST_NAME, department_id from employees where employee_id = 176;
select LAST_NAME, SALARY from employees where SALARY < 5000 or SALARY > 12000;
select last_name, employee_id, hire_date from employees where hire_date >= '2002/02/20' and hire_date <= '2005/05/01';
select LAST_NAME, department_id from employees where department_id in (20, 50) order by last_name asc;
select LAST_NAME, department_id from employees where department_id in (20, 50) and (SALARY >=5000 AND SALARY <= 12000);
select last_name, employee_id, hire_date from employees where hire_date like '02%';
select last_name, job_id from employees where manager_id is null;
select LAST_NAME, salary, commission_pct from employees where commission_pct is not null order by salary desc,commission_pct desc;
select LAST_NAME from employees where LAST_NAME LIKE '___a%';