| Soluções dos exercícios sobre funções de linha | ![]() |
select deptno, ename, round(sal*1.15) "Percentagem salário" from emp;
No ambiente SQL*Plus standard:
select rpad(ename,20,'*')||lpad(job,20,'*') from emp;
No ambiente iSQL*PLus o resultado aparece em HTML. Os browsers usam uma fonte de caractares não proporcional e por isso os caracteres não ocupam todos o mesmo espaço. Neste caso devemos usar o comando abaixo para activar a tag <PRE>:
set markup html preformat on; select rpad(ename,20,'*')||lpad(job,20,'*') from emp;
No ambiente Web do Oracle XE 10g não é possível executar o comando set markup html preformat on A alternativa é usar o SQL*Plus standard que pode ser invocado usando o atalho Run SQL Command Line
select rpad(ename,15)||'('||job||')' from emp;
select ename, job from emp where UPPER(job)='CLERK';
select ename,deptno,initcap(replace(job,'SALESMAN','SALES')) from emp;~
alter session set nls_territory='PORTUGAL';
alter session set nls_language='PORTUGUESE';
select ename ,
to_char(hiredate,'day, dd "de" Month "de" YYYY')
from emp
where deptno=20
Alternativa 1:
select ename, hiredate, add_months(hiredate,12) Revision from emp order by hiredate;
Alternativa 2:
select ename, hiredate, hiredate+365 Revision from emp order by hiredate
select ename,decode(sign(1500-sal),1,'Menor que',
0,'Em cheio',
-1,to_char(sal))
from emp
order by ename;
alter session set nls_language='PORTUGUESE';
select to_char(to_date('08-05-06','DD-MM-YY'),'DAY') from dual;
select ename,
hiredate,
floor(MONTHS_BETWEEN(sysdate,hiredate)/12)||' YEARS '||
floor(mod(MONTHS_BETWEEN(sysdate,hiredate),12))||' MONTHS'
from emp
where ename=upper('KING');
Realizado por Turtle Learning ®. Última alteração em 2011-02-26