Oracle/PLSQL: Pegar somente hora de um campo Datetime
select
to_Char(’01/07/2017 08:00:00′, ‘HH24:SS’)
FROM TABELA
Select para pegar a data e hora completa formado brasileiro
select
to_char(sysdate,’dd/mm/yyyy hh24:mi:ss’)
FROM dual
Oracle/PLSQL: Pegar somente hora de um campo Datetime
select
to_Char(’01/07/2017 08:00:00′, ‘HH24:SS’)
FROM TABELA
Select para pegar a data e hora completa formado brasileiro
select
to_char(sysdate,’dd/mm/yyyy hh24:mi:ss’)
FROM dual
Comando para verificar classe DbwsProxy em banco Oracle
select status from all_objects where dbms_java.longname(object_name)=’oracle/jpub/runtime/dbws/DbwsProxy’;
OVER (PARTITION BY
Exemplo prático:
Vamos criar uma tabela para os testes e exemplos de demonstração
create table
Exemplos;
row_number()
Max()
min()
rank
http://www.devmedia.com.br/funcoes-analiticas-em-oracle/3707
Hoje me deparei com o erro; ORA-01476 divisor is equal to zero, em um relatório, onde existia o cálculo de divisão.
O problema: Divisão por 0 (zero)
0/0
Solução:
CASE
select
case WHEN 0 (var) = 0 then 0
else
50 / 1
end soma
from dual
Resultado: 0
select
case WHEN 1 (var) = 0 then 0
else
50 / 2
end soma
from dual
Resultado: 25
Fonte: http://dba-oracle.com/t_ora_01476_divisor_equa_to_zero.htm
http://stackoverflow.com/questions/15798910/oracle-divisor-is-equal-to-zero
(2014/10)
SELECT
NM_PESSOA, DT_NASCIMENTO, DS_EMAIL
FROM
PESSOA_FISICA_TB P
WHERE P.SEXO = ‘M’
AND (
(case when 2 = :PARAMETRO then P.TIPO end) in (1)
or
(case when 2 = :PARAMETRO then P.TIPO end) <> (1)
)
AND ((case when ‘S’ = :P_FERR then
1 end) = 1
or
(case when ‘N’ = :P_FERR then CE.NUM_CONTRATO end) <> (123)
)
O comando TRUNCATE é responsável por limpar os registros de uma tabela e fará isto de uma forma mais rápido que o comando DELETE.
Para usar o comando é necessário ter permissão.
SELECT count(*) FROM tabela_A;
4639
TRUNCATE TABLE tabela_A;
SELECT count(*) FROM tabela_A;
0
Oracle/PLSQL: Função TO_CHAR
Sintaxe da função;
TO_CHAR( value, [ format_mask ], [ nls_language ] )
exemplo com datas
TO_CHAR(sysdate, ‘yyyy/mm/dd’); retorno ‘2003/07/09’
TO_CHAR(sysdate, ‘Month DD, YYYY’); retorno ‘July 09, 2003’
TO_CHAR(sysdate, ‘FMMonth DD, YYYY’); retorno ‘July 9, 2003’
TO_CHAR(sysdate, ‘MON DDth, YYYY’); retorno ‘JUL 09TH, 2003’
TO_CHAR(sysdate, ‘FMMON DDth, YYYY’); retorno ‘JUL 9TH, 2003’
TO_CHAR(sysdate, ‘FMMon ddth, YYYY’); retorno ‘Jul 9th, 2003’
http://www.techonthenet.com/oracle/functions/to_char.php
Oracle/PLSQL: FunçãoTrunc
SELECT
trunc((408.35 / 30 * 4 ),2)
FROM dual
Oracle/PLSQL: Função ADD_MONTHS
ADD_MONTHS(’01-Aug-03′, 3)
retorno ’01-Nov-03′
Oracle/PLSQL: Função REPLACE
SELECT
replace(‘1.1.1.1.1’, ‘.’, ”)
FROM dual
retorno
11111