Re: [oracle_br] Função Busca Fonética

2016-06-06 Por tôpico Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
Marcelo,

Sei que já existe essa procedure que trabalha usando a JVM do Oracle:

http://www.devmedia.com.br/sgbd-oracle-implementacao-de-funcao-para-fonetizacao-em-portugues/6300

Em 6 de junho de 2016 16:02, marcelo pereira da silva
marcelo...@yahoo.com.br [oracle_br]  escreveu:

>
>
> Boa tarde!
> Alguém conhece alguma função de busca fonética para nosso idioma que eu
> possa utilizar no Oracle?
>
> 
>


Re: [oracle_br] Função Agregada e Função Analítica

2013-10-17 Por tôpico Ernesto Oliveira
Tenta algo assim, ve se ajuda.

SELECT A.CodProd,
   A.Grupo,
   SUM(A.Qtde)
  FROM Pedidos A
GROUP BY ROLLUP (A.CodProd, A.Grupo)

CODPROD GRUPO SUM(A.QTDE)
1 bola bri 18
2 bola 18
3 carro bri 20
4 carro 20
5 livro pap 3
6 livro 3
7 boneca bri 2
8 boneca 2
9 caderno pap 7
10 caderno 7
11 50



Em 17 de outubro de 2013 11:59, Ernesto Oliveira escreveu:

> Pessoal bom dia !
>
> Acho que a solução aí seria o group by cube ou group by rollup
>
> Att,
>
> Ernesto Oliveira
>
>
> Em 17 de outubro de 2013 09:08, Emerson Sanches  > escreveu:
>
> **
>>
>>
>> Bom dia pessoal da lista, estou tentando usar a função SUM como função
>> agregada e como função analítica ao mesmo tempo, na mesma select e esta
>> retornando um erro, é possível fazer isso?
>>
>> Obrigado pela atenção
>>
>>
>> Emerson Sanches
>> Analista de Sistemas
>>
>>  
>>
>
>


Re: [oracle_br] Função Agregada e Função Analítica

2013-10-17 Por tôpico Ernesto Oliveira
Pessoal bom dia !

Acho que a solução aí seria o group by cube ou group by rollup

Att,

Ernesto Oliveira


Em 17 de outubro de 2013 09:08, Emerson Sanches
escreveu:

> **
>
>
> Bom dia pessoal da lista, estou tentando usar a função SUM como função
> agregada e como função analítica ao mesmo tempo, na mesma select e esta
> retornando um erro, é possível fazer isso?
>
> Obrigado pela atenção
>
>
> Emerson Sanches
> Analista de Sistemas
>
>  
>


Re: [oracle_br] Função

2013-01-18 Por tôpico Rafael Mendonca
vc deve primeiramente converter para char (to_char) depois vc converte para 
number (to_number)



 De: Samuel Santos 
Para: oracle_br  
Enviadas: Sexta-feira, 18 de Janeiro de 2013 17:18
Assunto: [oracle_br] Função
 

  
Pessoal,
Boa Tarde!

Alguém saberia me informar qual a função que eu consigo transformar data pra 
number?

[As partes desta mensagem que não continham texto foram removidas]


 

[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função para Validar CPF e CNPJ

2012-03-07 Por tôpico Yuri Menon
Apenas, adicionando
A função a seguir, promete validar tanto CPF como CNPJ.
obs: ainda não testei!


create or replace
FUNCTION VALIDA_CPF_CNPJ(V_CPF_CNPJ VARCHAR2) RETURN CHAR IS

  TYPE ARRAY_DV IS VARRAY(2) OF PLS_INTEGER;
  V_ARRAY_DV ARRAY_DV := ARRAY_DV(0, 0);
  CPF_DIGIT  CONSTANT PLS_INTEGER := 11;
  CNPJ_DIGIT CONSTANT PLS_INTEGER := 14;
  IS_CPF   BOOLEAN;
  IS_CNPJ  BOOLEAN;
  V_CPF_NUMBER VARCHAR2(20);
  TOTALNUMBER := 0;
  COEFICIENTE  NUMBER := 0;
  DV1NUMBER := 0;
  DV2NUMBER := 0;
  DIGITO NUMBER := 0;
  J  INTEGER;
  I  INTEGER;
BEGIN
  IF V_CPF_CNPJ IS NULL THEN
RETURN '0';
  END IF;
  /*
Retira os caracteres não numéricos do CPF/CNPJ
caso seja enviado para validação um valor com
a máscara.
  */
  V_CPF_NUMBER := REGEXP_REPLACE(V_CPF_CNPJ, '[^0-9]');
  /*
Verifica se o valor passado é um CPF através do
número de dígitos informados. CPF = 11
  */
  IS_CPF := (LENGTH(V_CPF_NUMBER) = CPF_DIGIT);
  /*
Verifica se o valor passado é um CNPJ através do
número de dígitos informados. CNPJ = 14
  */
  IS_CNPJ := (LENGTH(V_CPF_NUMBER) = CNPJ_DIGIT);
  IF (IS_CPF OR IS_CNPJ) THEN
TOTAL := 0;
  ELSE
RETURN '0';
  END IF;
   /*
Armazena os valores de dígitos informados para
posterior comparação com os dígitos verificadores calculados.
  */
  DV1 := TO_NUMBER(SUBSTR(V_CPF_NUMBER, LENGTH(V_CPF_NUMBER) - 1, 1));
  DV2 := TO_NUMBER(SUBSTR(V_CPF_NUMBER, LENGTH(V_CPF_NUMBER), 1));
  V_ARRAY_DV(1) := 0;
  V_ARRAY_DV(2) := 0;
  /*
Laço para cálculo dos dígitos verificadores.
É utilizado módulo 11 conforme norma da Receita Federal.
  */
  FOR J IN 1 .. 2
  LOOP
TOTAL := 0;
COEFICIENTE := 2;
FOR I IN REVERSE 1 .. ((LENGTH(V_CPF_NUMBER) - 3) + J)
LOOP
  DIGITO := TO_NUMBER(SUBSTR(V_CPF_NUMBER, I, 1));
  TOTAL := TOTAL + (DIGITO * COEFICIENTE);
  COEFICIENTE := COEFICIENTE + 1;
  IF (COEFICIENTE > 9) AND IS_CNPJ THEN
COEFICIENTE := 2;
  END IF;
END LOOP; --for i
V_ARRAY_DV(J) := 11 - MOD(TOTAL, 11);
IF (V_ARRAY_DV(J) >= 10) THEN
  V_ARRAY_DV(J) := 0;
END IF;
  END LOOP; --for j in 1..2
  /*
Compara os dígitos calculados com os informados para informar resultado.
  */
  IF (DV1 = V_ARRAY_DV(1)) AND(DV2 = V_ARRAY_DV(2)) THEN
RETURN '1';
  END IF;

  RETURN '0';
END VALIDA_CPF_CNPJ;

Em 6 de março de 2012 22:40, CLEYDSON BORGES
escreveu:

> --
> *
> --
> -- Funcao:
> Calcula_Digito_DOC--
> --
> --
> --
> Entrada:
>  --
> --  Tipo : determina que documento deve ser
> validado.--
> -- Valores validos sao: 'CGC' ou
> 'CPF'.  --
> --  Numero : numero do documento, com 13 digitos, com zeros a
> esquerda.  --
> --   O numero do documento nao deve estar formatado, nem
> incluir --
> --   os digitos de verificacao. Deve ser constituido apenas
> por  --
> --
> digitos.--
> --
> --
> --
> Saida:
>  --
> --  Digito de verificacao do CGC ou
> CPF. --
> --  Ou 'ER' se o documento especificado nao e' nem CGC, nem
> CPF. --
> --
> *
> --
> --
> Objetivo:
> --
> --  Calcular os digitos de verificacao do CGC ou CPF
> especificado.   --
> --
> *
> --
> --
> Autoria:
>  --
> --  Raissa M. M. Lopes  -   ralo...@br.oracle.com
> --
> --
> --
> -- Data de Criacao: 26.09.1996  Versao:
> 1--
> --
> *
> --
> create or replace function Calcula_Digito_DOC
> (
>TipoIN  varchar2,
>Numero  IN  varchar2
> )
> RETURN  varchar2
> IS
>Primeiro_Dignumber;
>Segundo_Dig number;
> BEGIN
>IF Tipo = 'CPF' THEN
>
>Primeiro_Dig := 11 - MOD (TO_NUMBER(SUBSTR(Numero,13,1) *
> 2) +
>   TO_NUMBER(SUBSTR(Numero,12,1) *
> 3) +
>   TO_NUMBER(SUBSTR(Numero,11,1) *
> 4) +
>   TO_NUMBER(SUBSTR(Numero,10,1) *
> 5) +
>   TO_NUMBER(SUBSTR(Numero,9,1) *
> 6) +
>   TO_NUMBER(SUBSTR(Numero,8,1) *
> 7) +
>   TO_NUMBER(SUBSTR(Numero,7,1) *
> 8) +
>   TO_NUMBER(SUBSTR(Numero,6,1) *
> 9) +
>   TO_NUMBER(SUBSTR(Numero,5,1) *

Re: [oracle_br] Função para Validar CPF e CNPJ

2012-03-07 Por tôpico CLEYDSON BORGES
-- 
* --
-- Funcao:
Calcula_Digito_DOC--
--
--
-- 
Entrada:  --
--  Tipo : determina que documento deve ser
validado.--
-- Valores validos sao: 'CGC' ou
'CPF'.  --
--  Numero : numero do documento, com 13 digitos, com zeros a
esquerda.  --
--   O numero do documento nao deve estar formatado, nem
incluir --
--   os digitos de verificacao. Deve ser constituido apenas
por  --
--
digitos.--
--
--
-- 
Saida:--
--  Digito de verificacao do CGC ou
CPF. --
--  Ou 'ER' se o documento especificado nao e' nem CGC, nem
CPF. --
-- 
* --
-- 
Objetivo: --
--  Calcular os digitos de verificacao do CGC ou CPF
especificado.   --
-- 
* --
-- 
Autoria:  --
--  Raissa M. M. Lopes  -   ralo...@br.oracle.com
--
--
--
-- Data de Criacao: 26.09.1996  Versao:
1--
-- 
* --
create or replace function Calcula_Digito_DOC
(
TipoIN  varchar2,
Numero  IN  varchar2
)
RETURN  varchar2
IS
Primeiro_Dignumber;
Segundo_Dig number;
BEGIN
IF Tipo = 'CPF' THEN

Primeiro_Dig := 11 - MOD (TO_NUMBER(SUBSTR(Numero,13,1) *
2) +
   TO_NUMBER(SUBSTR(Numero,12,1) *
3) +
   TO_NUMBER(SUBSTR(Numero,11,1) *
4) +
   TO_NUMBER(SUBSTR(Numero,10,1) *
5) +
   TO_NUMBER(SUBSTR(Numero,9,1) *
6) +
   TO_NUMBER(SUBSTR(Numero,8,1) *
7) +
   TO_NUMBER(SUBSTR(Numero,7,1) *
8) +
   TO_NUMBER(SUBSTR(Numero,6,1) *
9) +
   TO_NUMBER(SUBSTR(Numero,5,1) *
10),
   11);

if (Primeiro_Dig = 11) or (Primeiro_Dig = 10) then
Primeiro_Dig := 0;
end if;

Segundo_Dig := 11 - MOD (Primeiro_Dig * 2 +
  TO_NUMBER (SUBSTR(Numero,13,1) *
3) +
  TO_NUMBER (SUBSTR(Numero,12,1) *
4) +
  TO_NUMBER (SUBSTR(Numero,11,1) *
5) +
  TO_NUMBER (SUBSTR(Numero,10,1) *
6) +
  TO_NUMBER (SUBSTR(Numero,9,1) *
7) +
  TO_NUMBER (SUBSTR(Numero,8,1) *
8) +
  TO_NUMBER (SUBSTR(Numero,7,1) *
9) +
  TO_NUMBER (SUBSTR(Numero,6,1) *
10) +
  TO_NUMBER (SUBSTR(Numero,5,1) *
11),
  11);

if (Segundo_Dig = 11) or (Segundo_Dig = 10) THEN
Segundo_Dig := 0;
end if;

Return (CONCAT(TO_CHAR(Primeiro_Dig),TO_CHAR(Segundo_Dig)));

ELSIF Tipo = 'CGC' THEN

Primeiro_Dig := (11 - MOD (TO_NUMBER(SUBSTR(Numero,13,1) *
2) +
   TO_NUMBER(SUBSTR(Numero,12,1) *
3) +
   TO_NUMBER(SUBSTR(Numero,11,1) *
4) +
   TO_NUMBER(SUBSTR(Numero,10,1) *
5) +
   TO_NUMBER(SUBSTR(Numero,9,1) *
6) +
   TO_NUMBER(SUBSTR(Numero,8,1) *
7) +
   TO_NUMBER(SUBSTR(Numero,7,1) *
8) +
   TO_NUMBER(SUBSTR(Numero,6,1) *
9) +
   TO_NUMBER(SUBSTR(Numero,5,1) *
2) +
   TO_NUMBER(SUBSTR(Numero,4,1) *
3) +
   TO_NUMBER(SUBSTR(Numero,3,1) *
4) +
   TO_NUMBER(SUBSTR(Numero,2,1) *
5),
   11));

if (Primeiro_Dig = 11) or (Primeiro_Dig = 10) then
Primeiro_Dig := 0;
end if;

Segundo_Dig := (11 - MOD

Re: [oracle_br] Função power - ORA-01428

2012-01-05 Por tôpico Josiel Oliveira
Marlon,

Obrigado pela dica.
Deixando o primeiro parametro positivo a operação foi realizada.

Obrigado.

Em 5 de janeiro de 2012 13:56, Marlon Pasquali - TI - Peccin S.A. <
marlon.pasqu...@peccin.com.br> escreveu:

> **
>
>
> É que a primeira parte (-264/100) resulta em um numero negativo. Não pode
> deixa-lo positivo ??
>
> MARLON ALEXANDRE PASQUALI
> T.I. - ANALISTA DE DESENVOLVIMENTO
>
> Pessoal,
>
> Tenho uma rotina que efetua vários calculos e um deles está estourando
> erro.
> O cálculo que estoura erro é:
>
> select power((( -264 / 100 ) + 1 ), ( 10 / 252 )) from dual;
>
> ORA-01428: argument '-1.64' is out of range
>
> Alguem já teve este tipo de problema ?
> Pesquisando encontrei alguns lugares dizendo para usar CEIL no segundo
> argumento do power, porém isso geraria um cálculo errada, pois altera a
> precisão do valor.
>
> Por favor me ajudem 
>
> Obrigado,
>
> --
> Att.
> *Josiel L. Oliveira*
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Att.
*Josiel L. Oliveira*


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função Analítica.

2011-08-19 Por tôpico Eduardo Rodrigues
Isso mesmo Rejane! Deu certo

*

select b.data, b.uf, b.ref_lm, b.qtd, sum(a.qtd) qtd
from tabela a, tabela b
where a.ref_lm = b.ref_lm
and a.uf = b.uf
and a.data <= b.data
and a.ref_lm = 58859521
group by b.data, b.uf, b.ref_lm, b.qtd
order by b.data

01/01/2010 DF 58859521 3,00  3,00
01/02/2010 DF 58859521 1,00  4,00
01/03/2010 DF 58859521 3,00  7,00
01/04/2010 DF 58859521 1,00  8,00
01/05/2010 DF 58859521 1,00  9,00
01/04/2010 SP 58859521 2,00  2,00
01/05/2010 SP 58859521 1,00  3,00
01/06/2010 SP 58859521 3,00  6,00
01/01/2011 SP 58859521 3,00  9,00*

Muito Obrigado.
Em 19 de agosto de 2011 16:06, Rejane Cristina Messias Correia <
rejane.corr...@altoalegre.com.br> escreveu:

> **
>
>
> Seria Assim??
>
> SELECT B.DATA,
>
> B.VALOR,
>
> SUM(A.VALOR)
>
> FROM MOV A,
>
> MOV B
>
> WHERE A.DATA <= B.DATA
>
> GROUP BY B.DATA,
>
> B.VALOR
>
> ORDER BY B.DATA;
>
> De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
> nome de Eduardo Rodrigues
> Enviada em: sexta-feira, 19 de agosto de 2011 16:02
> Para: oracle_br@yahoogrupos.com.br
> Assunto: Re: [oracle_br] Função Analítica.
>
>
> Gerson, não seria bem isso, se eu agrupar pelo campo data ele ira me
> retornar a soma de cada data, eu preciso que retorne o acumulado dos meses,
> partindo do mês 01, como no exemplo: Onde o mês 02 soma o mês 01 e 02, o
> mês
> 03 soma o mês 01, 02 e 03 e assim por diante.
>
> Me Desculpe pelas repetições.
>
> Em 19 de agosto de 2011 15:50, Gerson Junior
> mailto:gerson.vasconcelos%40gmail.com>
>
> >escreveu:
>
> > Não sei se entendi bem, mas se voce quer acumular por data, é só usar um
> > group by.
> >
> > select campo_data, count(campo_acumular) from tabela group by campo_data.
> >
> > Isso vai te dar a quantidade em campo_acumular, para cada data. Se quiser
> > somar usa o sum, e assim por diante.
> >
> > Se não entendi a pergunta e estou sendo muito óbvio, me desculpe! E
> repita
> > a
> > pargunta.
> >
> > Abraço.
> >
> >
> >
> >
> > Gerson S. de Vasconcelos Júnior
> > OCA DBA - Oracle Certified Associate
> > Fone: (81) 9816-0236
> > Msn: gerson.vasconce...@gmail.com <mailto:gerson.vasconcelos%40gmail.com>
>
> > Skype: gersonvjunior
> > http://www.diaadiaoracle.com.br/
> >
> >
> > Em 19 de agosto de 2011 15:35, Eduardo Rodrigues  <mailto:oraeduardo%40gmail.com>
>  > >escreveu:
> >
> > > **
> > >
> > >
> > > Pessoal,
> > >
> > > Trabalho com desenvolvimento PL/SQL e estou precisando fazer uma
> consulta
> > > que me retorne o valor acumulado de uma campo por data conforme exemplo
> > > abaixo, fiz isso facilmente dentro de um bloco, porém a duvida é teria
> > como
> > > fazer isso usando alguma função analítica?
> > >
> > > DATA QTD ACUMULADO
> > > 01/2011 10 10
> > > 02/2011 15 25
> > > 03/2011 30 55
> > > 04/2011 22 77
> > >
> > > Obrigado
> > >
> > > Eduardo Rodrigues
> > > Analista de Sistemas
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> > 
> >
> >
> > --
> > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> > inteira responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> >
> > --
> > >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package »
> Procedure
> > » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> > http://www.oraclebr.com.br/
> > --
> > Links do Yahoo! Grupos
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> ---
>
> Mensagem verificada pelo AntiSpam Alto Alegre.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR sã

Re: [oracle_br] Função Analítica.

2011-08-19 Por tôpico Eduardo Rodrigues
Gerson, não seria bem isso, se eu agrupar pelo campo data ele ira me
retornar a soma de cada data, eu preciso que retorne o acumulado dos meses,
partindo do mês 01, como no exemplo: Onde o mês 02 soma o mês 01 e 02, o mês
03 soma o mês 01, 02 e 03 e assim por diante.

Me Desculpe pelas repetições.



Em 19 de agosto de 2011 15:50, Gerson Junior
escreveu:

> Não sei se entendi bem, mas se voce quer acumular por data, é só usar um
> group by.
>
> select campo_data, count(campo_acumular) from tabela group by campo_data.
>
> Isso vai te dar a quantidade em campo_acumular, para cada data. Se quiser
> somar usa o sum, e assim por diante.
>
> Se não entendi a pergunta e estou sendo muito óbvio, me desculpe! E repita
> a
> pargunta.
>
> Abraço.
>
>
>
>
> Gerson S. de Vasconcelos Júnior
> OCA DBA - Oracle Certified Associate
> Fone: (81) 9816-0236
> Msn: gerson.vasconce...@gmail.com
> Skype: gersonvjunior
> http://www.diaadiaoracle.com.br/
>
>
> Em 19 de agosto de 2011 15:35, Eduardo Rodrigues  >escreveu:
>
> > **
>  >
> >
> > Pessoal,
> >
> > Trabalho com desenvolvimento PL/SQL e estou precisando fazer uma consulta
> > que me retorne o valor acumulado de uma campo por data conforme exemplo
> > abaixo, fiz isso facilmente dentro de um bloco, porém a duvida é teria
> como
> > fazer isso usando alguma função analítica?
> >
> > DATA QTD ACUMULADO
> > 01/2011 10 10
> > 02/2011 15 25
> > 03/2011 30 55
> > 04/2011 22 77
> >
> > Obrigado
> >
> > Eduardo Rodrigues
> > Analista de Sistemas
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> 
>
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
>
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> 
> Links do Yahoo! Grupos
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função Analítica.

2011-08-19 Por tôpico Gerson Junior
Não sei se entendi bem, mas se voce quer acumular por data, é só usar um
group by.

select campo_data, count(campo_acumular) from tabela group by campo_data.

Isso vai te dar a quantidade em campo_acumular, para cada data. Se quiser
somar usa o sum, e assim por diante.

Se não entendi a pergunta e estou sendo muito óbvio, me desculpe! E repita a
pargunta.

Abraço.




Gerson S. de Vasconcelos Júnior
OCA DBA - Oracle Certified Associate
Fone: (81) 9816-0236
Msn: gerson.vasconce...@gmail.com
Skype: gersonvjunior
http://www.diaadiaoracle.com.br/


Em 19 de agosto de 2011 15:35, Eduardo Rodrigues escreveu:

> **
>
>
> Pessoal,
>
> Trabalho com desenvolvimento PL/SQL e estou precisando fazer uma consulta
> que me retorne o valor acumulado de uma campo por data conforme exemplo
> abaixo, fiz isso facilmente dentro de um bloco, porém a duvida é teria como
> fazer isso usando alguma função analítica?
>
> DATA QTD ACUMULADO
> 01/2011 10 10
> 02/2011 15 25
> 03/2011 30 55
> 04/2011 22 77
>
> Obrigado
>
> Eduardo Rodrigues
> Analista de Sistemas
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função SUBSTR

2010-06-02 Por tôpico Thiago
Marcos,
 
Ao inves de usar + para unir as Strings use || ,

Assim deve funcionar.

Sent from Ipod

On 01/06/2010, at 09:37, "Flaviano, Wellington (GE Capital)" 
 wrote:

Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de mssql 
... então vamos lá.

Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero 
transformar ele assim 011-- e um simples select

Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) + 
'-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' + 
MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL

Só que não está funcionando o que estou fazendo de errado?

Valeu.

[As partes desta mensagem que não continham texto foram removidas]






[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função SUBSTR

2010-06-02 Por tôpico Leonardo
Boa noite.

   É que no Oracle a concatenação não é com o "+" e sim com "|".



--- Em ter, 1/6/10, Flaviano, Wellington (GE Capital) 
 escreveu:

De: Flaviano, Wellington (GE Capital) 
Assunto: [oracle_br] Função SUBSTR
Para: 
Data: Terça-feira, 1 de Junho de 2010, 9:37







 



  



  
  
  Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de 
mssql ... então vamos lá.



Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero 
transformar ele assim 011-- e um simples select



Estou fazendo da seguinte forma:  TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) + 
'-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' + 
MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL



Só que não está funcionando o que estou fazendo de errado?



Valeu.



[As partes desta mensagem que não continham texto foram removidas]






 





 



  






  

[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Marcos Braga
kkk

Desculpaí..., informação valiosíssima: a versão do banco (devia ter
questionado antes de tentar dar a solução).

Expressão regular (regexp_* ...) funciona a partir da versão 10, desculpe.

[]s
Braga


Em 1 de junho de 2010 13:50, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Braga.
> Executei o mesmo select que voce passou (abaixo) e dá esse erro, disseram
> que é por causa da versão do banco, que utilizo o 8g.
>
>
> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual
>
> []'s
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 1:48 PM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> O erro reporta um caracter inválido na string.
>
> Seguinte, o código que passei só vai funcionar quando encontrar campo com
> números (há como mudar isso).
>
> Uma questão para levar em consideração é: os caracteres que tem no campo de
> telefone são somente números?
>
> Gostaria que postasse o código que executou juntamente com o erro, vai
> melhorar o entendimento.
>
> []s
> Braga
>
> Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Marcos.
> > Ao executar o comando aparece o seguinte erro: ORA-00904:
> "REGEXP_REPLACE":
> > invalid identifier ... o que pode ser? Permissão de acesso?
> >
> > []'s
> >
> > -Original Message-
> > From: oracle_br@yahoogrupos.com.br 
> >  40yahoogrupos.com.br>[mailto:
> > oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>] On Behalf
> > Of Marcos Braga
> > Sent: Tuesday, June 01, 2010 10:20 AM
> > To: oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>
> > Subject: Re: [oracle_br] Função SUBSTR
> >
> > Olá,
> >
> > Observe este pequeno exemplo:
> >
> > SQL> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
> >
> > ORIGINAL MODIFICADO
> > --- -
> > 011 011--
> >
> > 1 linha selecionada.
> >
> > Creio que isso resolverá seu problema:
> > regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
> >
> > Tenho um exemplo bem parecido, formatando CPF neste endereço:
> >
> >
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
> >
> > []s
> > Braga
> >
> > Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> > wellington.flavi...@ge.com 
> >  40ge.com>> escreveu:
>
> >
> > >
> > >
> > > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > > mssql ... então vamos lá.
> > >
> > > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > > transformar ele assim 011-- e um simples select
> > >
> > > Estou fazendo da seguinte forma:
> > TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> > >
> > > Só que não está funcionando o que estou fazendo de errado?
> > >
> > > Valeu.
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Eduardo Schurtz
É, nada como o bom e velho SUBSTR:

  select substr(lpad(nr_fone_principal, 11, '0'), 1, 3)
  || '-'
  || substr(lpad(nr_fone_principal, 11, '0'), 4, 4)
  || '-'
  || substr(lpad(nr_fone_principal, 11, '0'), 8, 4)
  from ...

Usei o LPAD pra garantir que o primeiro dígito será um ZERO, caso o valor no
banco esteja sem ele... Formando assim os 11 dígitos que você mencionou no
exemplo.

Testa aí e diga se deu certo.

Abs

__
*Eduardo Schurtz*
Oracle E-Business Consultant
[image: LinkedIn] <http://br.linkedin.com/in/eduardoschurtz>[image:
Twitter]<http://twitter.com/eduardo_oracle>

2010/6/1 Flaviano, Wellington (GE Capital) 

>
>
> Braga.
> Executei o mesmo select que voce passou (abaixo) e dá esse erro, disseram
> que é por causa da versão do banco, que utilizo o 8g.
>
>
> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual
>
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 1:48 PM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> O erro reporta um caracter inválido na string.
>
> Seguinte, o código que passei só vai funcionar quando encontrar campo com
> números (há como mudar isso).
>
> Uma questão para levar em consideração é: os caracteres que tem no campo de
> telefone são somente números?
>
> Gostaria que postasse o código que executou juntamente com o erro, vai
> melhorar o entendimento.
>
> []s
> Braga
>
> Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Marcos.
> > Ao executar o comando aparece o seguinte erro: ORA-00904:
> "REGEXP_REPLACE":
> > invalid identifier ... o que pode ser? Permissão de acesso?
> >
> > []'s
> >
> > -----Original Message-----
> > From: oracle_br@yahoogrupos.com.br 
> >  40yahoogrupos.com.br>[mailto:
> > oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>] On Behalf
> > Of Marcos Braga
> > Sent: Tuesday, June 01, 2010 10:20 AM
> > To: oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>
> > Subject: Re: [oracle_br] Função SUBSTR
> >
> > Olá,
> >
> > Observe este pequeno exemplo:
> >
> > SQL> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
> >
> > ORIGINAL MODIFICADO
> > --- -
> > 011 011--
> >
> > 1 linha selecionada.
> >
> > Creio que isso resolverá seu problema:
> > regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
> >
> > Tenho um exemplo bem parecido, formatando CPF neste endereço:
> >
> >
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
> >
> > []s
> > Braga
> >
> > Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> > wellington.flavi...@ge.com 
> >  40ge.com>> escreveu:
> >
> > >
> > >
> > > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > > mssql ... então vamos lá.
> > >
> > > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > > transformar ele assim 011-- e um simples select
> > >
> > > Estou fazendo da seguinte forma:
> > TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> > >
> > > Só que não está funcionando o que estou fazendo de errado?
> > >
> > > Valeu.
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > 
> >
> > --
> > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> > inteira responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> > --
>

Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Fabio Martinez
tenta assim.

SQL> select
substr('011',-11,3)||'-'||substr('011',-8,4)||'-'||substr('011',-4,4)
telefone from dual;
TELEFONE
-
011--
SQL>

Em 1 de junho de 2010 13:50, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Braga.
> Executei o mesmo select que voce passou (abaixo) e dá esse erro, disseram
> que é por causa da versão do banco, que utilizo o 8g.
>
>
> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual
>
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 1:48 PM
> To: oracle_br@yahoogrupos.com.br 
>  Subject: Re: [oracle_br] Função SUBSTR
>
> O erro reporta um caracter inválido na string.
>
> Seguinte, o código que passei só vai funcionar quando encontrar campo com
> números (há como mudar isso).
>
> Uma questão para levar em consideração é: os caracteres que tem no campo de
> telefone são somente números?
>
> Gostaria que postasse o código que executou juntamente com o erro, vai
> melhorar o entendimento.
>
> []s
> Braga
>
> Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Marcos.
> > Ao executar o comando aparece o seguinte erro: ORA-00904:
> "REGEXP_REPLACE":
> > invalid identifier ... o que pode ser? Permissão de acesso?
> >
> > []'s
> >
> > -----Original Message-----
> > From: oracle_br@yahoogrupos.com.br 
> >  40yahoogrupos.com.br>[mailto:
> > oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>] On Behalf
> > Of Marcos Braga
> > Sent: Tuesday, June 01, 2010 10:20 AM
> > To: oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>
> > Subject: Re: [oracle_br] Função SUBSTR
> >
> > Olá,
> >
> > Observe este pequeno exemplo:
> >
> > SQL> select '011' original, regexp_replace('011',
> > '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
> >
> > ORIGINAL MODIFICADO
> > --- -
> > 011 011--
> >
> > 1 linha selecionada.
> >
> > Creio que isso resolverá seu problema:
> > regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
> >
> > Tenho um exemplo bem parecido, formatando CPF neste endereço:
> >
> >
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
> >
> > []s
> > Braga
> >
> > Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> > wellington.flavi...@ge.com 
> >  40ge.com>> escreveu:
> >
> > >
> > >
> > > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > > mssql ... então vamos lá.
> > >
> > > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > > transformar ele assim 011-- e um simples select
> > >
> > > Estou fazendo da seguinte forma:
> > TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> > >
> > > Só que não está funcionando o que estou fazendo de errado?
> > >
> > > Valeu.
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > 
> >
> > --
> > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> > inteira responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> > --
> > >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package »
> Procedure
> > » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> > http://www.oraclebr.com.br/
> > -- Links do
> Yahoo!
> > Grupos
> >
> >
> >
>
> [As partes desta mensag

RE: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Flaviano, Wellington (GE Capital)
Braga.
Executei o mesmo select que voce passou (abaixo) e dá esse erro, disseram que é 
por causa da versão do banco, que utilizo o 8g.

select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual

[]'s


-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] On 
Behalf Of Marcos Braga
Sent: Tuesday, June 01, 2010 1:48 PM
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função SUBSTR

O erro reporta um caracter inválido na string.

Seguinte, o código que passei só vai funcionar quando encontrar campo com
números (há como mudar isso).

Uma questão para levar em consideração é: os caracteres que tem no campo de
telefone são somente números?

Gostaria que postasse o código que executou juntamente com o erro, vai
melhorar o entendimento.

[]s
Braga


Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Marcos.
> Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE":
> invalid identifier ... o que pode ser? Permissão de acesso?
>
> []'s
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 10:20 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Olá,
>
> Observe este pequeno exemplo:
>
> SQL> select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
>
> ORIGINAL MODIFICADO
> --- -
> 011 011--
>
> 1 linha selecionada.
>
> Creio que isso resolverá seu problema:
> regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
>
> Tenho um exemplo bem parecido, formatando CPF neste endereço:
>
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
>
> []s
> Braga
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Marcos Braga
O erro reporta um caracter inválido na string.

Seguinte, o código que passei só vai funcionar quando encontrar campo com
números (há como mudar isso).

Uma questão para levar em consideração é: os caracteres que tem no campo de
telefone são somente números?

Gostaria que postasse o código que executou juntamente com o erro, vai
melhorar o entendimento.

[]s
Braga


Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Marcos.
> Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE":
> invalid identifier ... o que pode ser? Permissão de acesso?
>
> []'s
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 10:20 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Olá,
>
> Observe este pequeno exemplo:
>
> SQL> select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
>
> ORIGINAL MODIFICADO
> --- -
> 011 011--
>
> 1 linha selecionada.
>
> Creio que isso resolverá seu problema:
> regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
>
> Tenho um exemplo bem parecido, formatando CPF neste endereço:
>
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
>
> []s
> Braga
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




RE: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Flaviano, Wellington (GE Capital)
É ... o banco é 8g.

Valeu




-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] On 
Behalf Of Eduardo Schurtz
Sent: Tuesday, June 01, 2010 11:21 AM
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função SUBSTR

Que versão de banco você tá usando? Acho que essa função é da 10g pra
cima...

Abs

__
*Eduardo Schurtz*
Oracle E-Business Consultant
[image: LinkedIn] <http://br.linkedin.com/in/eduardoschurtz>[image:
Twitter]<http://twitter.com/eduardo_oracle>

2010/6/1 Flaviano, Wellington (GE Capital) 

>
>
> Marcos.
> Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE":
> invalid identifier ... o que pode ser? Permissão de acesso?
>
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 10:20 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Olá,
>
> Observe este pequeno exemplo:
>
> SQL> select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
>
> ORIGINAL MODIFICADO
> --- -
> 011 011--
>
> 1 linha selecionada.
>
> Creio que isso resolverá seu problema:
> regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
>
> Tenho um exemplo bem parecido, formatando CPF neste endereço:
>
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
>
> []s
> Braga
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Eduardo Schurtz
Que versão de banco você tá usando? Acho que essa função é da 10g pra
cima...

Abs

__
*Eduardo Schurtz*
Oracle E-Business Consultant
[image: LinkedIn] <http://br.linkedin.com/in/eduardoschurtz>[image:
Twitter]<http://twitter.com/eduardo_oracle>

2010/6/1 Flaviano, Wellington (GE Capital) 

>
>
> Marcos.
> Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE":
> invalid identifier ... o que pode ser? Permissão de acesso?
>
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 10:20 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Olá,
>
> Observe este pequeno exemplo:
>
> SQL> select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
>
> ORIGINAL MODIFICADO
> --- -
> 011 011--
>
> 1 linha selecionada.
>
> Creio que isso resolverá seu problema:
> regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
>
> Tenho um exemplo bem parecido, formatando CPF neste endereço:
>
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
>
> []s
> Braga
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Ricardo Tajiri
Oi Flaviano,

REGEXP_REPLACE você só pode usar no Oracle 10g ou mais recente.



Em 1 de junho de 2010 10:58, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Marcos.
> Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE":
> invalid identifier ... o que pode ser? Permissão de acesso?
>
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Marcos Braga
> Sent: Tuesday, June 01, 2010 10:20 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Olá,
>
> Observe este pequeno exemplo:
>
> SQL> select '011' original, regexp_replace('011',
> '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;
>
> ORIGINAL MODIFICADO
> --- -
> 011 011--
>
> 1 linha selecionada.
>
> Creio que isso resolverá seu problema:
> regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')
>
> Tenho um exemplo bem parecido, formatando CPF neste endereço:
>
> http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/
>
> []s
> Braga
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> -- Links do Yahoo!
> Grupos
>
>  
>



-- 
Ricardo H. Tajiri


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




RE: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Flaviano, Wellington (GE Capital)
Marcos.
Ao executar o comando aparece o seguinte erro: ORA-00904: "REGEXP_REPLACE": 
invalid identifier ... o que pode ser? Permissão de acesso?

[]'s


-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] On 
Behalf Of Marcos Braga
Sent: Tuesday, June 01, 2010 10:20 AM
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função SUBSTR

Olá,

Observe este pequeno exemplo:

SQL> select '011' original, regexp_replace('011',
'^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;

ORIGINALMODIFICADO
--- -
011 011--

1 linha selecionada.

Creio que isso resolverá seu problema:
regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')

Tenho um exemplo bem parecido, formatando CPF neste endereço:
http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/

[]s
Braga

Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> mssql ... então vamos lá.
>
> Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> transformar ele assim 011-- e um simples select
>
> Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
>
> Só que não está funcionando o que estou fazendo de errado?
>
> Valeu.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Marcos Braga
Olá,

Observe este pequeno exemplo:

SQL> select '011' original, regexp_replace('011',
'^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual;

ORIGINALMODIFICADO
--- -
011 011--

1 linha selecionada.

Creio que isso resolverá seu problema:
regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3')

Tenho um exemplo bem parecido, formatando CPF neste endereço:
http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/

[]s
Braga

Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> mssql ... então vamos lá.
>
> Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> transformar ele assim 011-- e um simples select
>
> Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
>
> Só que não está funcionando o que estou fazendo de errado?
>
> Valeu.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




RE: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Flaviano, Wellington (GE Capital)
Exato ... mas minha query é assiom

Select
Cpf
Max(endereco)
Max(blá.blá.blá
Sum(...)
>From tabela
Where ...
Group by cpf

Senão eu tenho que colocar todos os campos no group by por causa de condições, 
join e etc que utilizo dentro do pl ... logo, só coloco o que é chave.

Entendeu?

[]'s




-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] On 
Behalf Of Gerson Junior
Sent: Tuesday, June 01, 2010 9:51 AM
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função SUBSTR

Coloca o MAX pra não usar o GROUP BY???

Não entendi! Se você colocar o MAX, por ser uma função de Grupo, aí é que
você precisa usar o Group by! kkk



Atc.
Gerson S. de Vasconcelos Júnior
OCA DBA - Oracle Certified Associate
Fone: (81) 9103-4984
Msn: gerson.vasconce...@gmail.com
Skype: gersonvjunior
http://www.diaadiaoracle.com.br/


Em 1 de junho de 2010 09:45, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Valeu Gerson...
> Mas eu coloco o MAX para não colocar o campo no GROUP BY ... era o PIPE
> mesmo, tentei concatenar com & ... quase acertei .rss
>
> Funcionou assim
> ,TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) || '-'
>
> || MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) || '-'
> || MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4)
> )) AS NR_FONE_PRINCIPAL
>
> Valeu...
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Gerson Junior
> Sent: Tuesday, June 01, 2010 9:41 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Tenta isso:
>
> substr(nr_fone_principal, 1, 3)||'-'||substr(nr_fone_principal, 4,
> 4)||'-'||substr(nr_fone_principal, 8, 4) AS NR_FONE_PRINCIPAL
>
> Voce não precisa usar o MAX neste caso. E além disso, você não concatena no
> Oracle com + e sim com ||.
>
> Boa sorte.
>
> Atc.
> Gerson S. de Vasconcelos Júnior
> OCA DBA - Oracle Certified Associate
> Fone: (81) 9103-4984
> Msn: gerson.vasconce...@gmail.com 
> Skype: gersonvjunior
> http://www.diaadiaoracle.com.br/
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
>  -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Gerson Junior
Coloca o MAX pra não usar o GROUP BY???

Não entendi! Se você colocar o MAX, por ser uma função de Grupo, aí é que
você precisa usar o Group by! kkk



Atc.
Gerson S. de Vasconcelos Júnior
OCA DBA - Oracle Certified Associate
Fone: (81) 9103-4984
Msn: gerson.vasconce...@gmail.com
Skype: gersonvjunior
http://www.diaadiaoracle.com.br/


Em 1 de junho de 2010 09:45, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Valeu Gerson...
> Mas eu coloco o MAX para não colocar o campo no GROUP BY ... era o PIPE
> mesmo, tentei concatenar com & ... quase acertei .rss
>
> Funcionou assim
> ,TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) || '-'
>
> || MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) || '-'
> || MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4)
> )) AS NR_FONE_PRINCIPAL
>
> Valeu...
> []'s
>
>
> -Original Message-
> From: oracle_br@yahoogrupos.com.br [mailto:
> oracle_br@yahoogrupos.com.br ] On Behalf
> Of Gerson Junior
> Sent: Tuesday, June 01, 2010 9:41 AM
> To: oracle_br@yahoogrupos.com.br 
> Subject: Re: [oracle_br] Função SUBSTR
>
> Tenta isso:
>
> substr(nr_fone_principal, 1, 3)||'-'||substr(nr_fone_principal, 4,
> 4)||'-'||substr(nr_fone_principal, 8, 4) AS NR_FONE_PRINCIPAL
>
> Voce não precisa usar o MAX neste caso. E além disso, você não concatena no
> Oracle com + e sim com ||.
>
> Boa sorte.
>
> Atc.
> Gerson S. de Vasconcelos Júnior
> OCA DBA - Oracle Certified Associate
> Fone: (81) 9103-4984
> Msn: gerson.vasconce...@gmail.com 
> Skype: gersonvjunior
> http://www.diaadiaoracle.com.br/
>
> Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
> wellington.flavi...@ge.com > escreveu:
>
> >
> >
> > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> > mssql ... então vamos lá.
> >
> > Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> > transformar ele assim 011-- e um simples select
> >
> > Estou fazendo da seguinte forma:
> TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
> >
> > Só que não está funcionando o que estou fazendo de errado?
> >
> > Valeu.
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
>  -- Links do Yahoo!
> Grupos
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Márcio Ricardo Alves da Silva
select '0' || substr(to_char(11),1,2) || '-' || 
substr(to_char(11),3,4) || '-' || substr(to_char(11),7,4) from 
dual



O zero na frente tem que colocar fixo, pois campo numérico desconsidera zero a 
esquerda.

Márcio.

- Original Message - 

  From: Flaviano, Wellington (GE Capital) 
  Sent: Tuesday, June 01, 2010 9:37 AM
  Subject: [oracle_br] Função SUBSTR



  Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de mssql 
... então vamos lá.

  Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero 
transformar ele assim 011-- e um simples select

  Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) + 
'-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' + 
MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL

  Só que não está funcionando o que estou fazendo de errado?

  Valeu.

  [As partes desta mensagem que não continham texto foram removidas]



  

[As partes desta mensagem que não continham texto foram removidas]



RE: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Flaviano, Wellington (GE Capital)
Valeu Gerson...
Mas eu coloco o MAX para não colocar o campo no GROUP BY ... era o PIPE mesmo, 
tentei concatenar com & ... quase acertei .rss

Funcionou assim
  ,TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) || '-'
 || MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) || '-'
 || MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4)
 )) AS NR_FONE_PRINCIPAL

Valeu...
[]'s



-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] On 
Behalf Of Gerson Junior
Sent: Tuesday, June 01, 2010 9:41 AM
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função SUBSTR

Tenta isso:

substr(nr_fone_principal, 1, 3)||'-'||substr(nr_fone_principal, 4,
4)||'-'||substr(nr_fone_principal, 8, 4) AS NR_FONE_PRINCIPAL

Voce não precisa usar o MAX neste caso. E além disso, você não concatena no
Oracle com + e sim com ||.

Boa sorte.


Atc.
Gerson S. de Vasconcelos Júnior
OCA DBA - Oracle Certified Associate
Fone: (81) 9103-4984
Msn: gerson.vasconce...@gmail.com
Skype: gersonvjunior
http://www.diaadiaoracle.com.br/


Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> mssql ... então vamos lá.
>
> Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> transformar ele assim 011-- e um simples select
>
> Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
>
> Só que não está funcionando o que estou fazendo de errado?
>
> Valeu.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos




Re: [oracle_br] Função SUBSTR

2010-06-01 Por tôpico Gerson Junior
Tenta isso:

substr(nr_fone_principal, 1, 3)||'-'||substr(nr_fone_principal, 4,
4)||'-'||substr(nr_fone_principal, 8, 4) AS NR_FONE_PRINCIPAL

Voce não precisa usar o MAX neste caso. E além disso, você não concatena no
Oracle com + e sim com ||.

Boa sorte.


Atc.
Gerson S. de Vasconcelos Júnior
OCA DBA - Oracle Certified Associate
Fone: (81) 9103-4984
Msn: gerson.vasconce...@gmail.com
Skype: gersonvjunior
http://www.diaadiaoracle.com.br/


Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) <
wellington.flavi...@ge.com> escreveu:

>
>
> Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de
> mssql ... então vamos lá.
>
> Tenho o campo NR_TELEFONE que é preenchido assim: 011 e quero
> transformar ele assim 011-- e um simples select
>
> Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3))
> + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' +
> MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL
>
> Só que não está funcionando o que estou fazendo de errado?
>
> Valeu.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função para teste se string está contida na outra

2009-08-19 Por tôpico Nino
se retornar zero é porque nao existe.
se for diferente disso, é porque existe

Abraços!



2009/8/19 Alexandre Brum 

>
>
> Nino
>
> Mas esta função retorna a posição em que uma está contida na outra, mas não
> verifica se apenas existe. Isto é, eu preciso que retorne um true ou false.
> Ou é possível fazer esse teste com ela?
>
> Obrigado.
>
> Fique com Deus.
> Um grande abraço.
> Fiscalize o Congresso: http://www.congressoemfoco.ig.com.br
>
> Atenciosamente,
> Alexandre Brum
>
> 
> De: Nino >
> Para: oracle_br@yahoogrupos.com.br 
> Enviadas: Quarta-feira, 19 de Agosto de 2009 17:26:37
> Assunto: Re: [oracle_br] Função para teste se string está contida na outra
>
> INSTR(STRING1, STRING2)
>
> onde String2 é o que vc procura, string1 é onde vc procura
>
> 2009/8/19 Alexandre Brum 
>
> >
> >
> > Galera
> >
> > Qual a função que eu testo se uma string está contida numa outra?
> >
> > Ex.: If a (está contida em) b Then
> >
> >
> > Faça isso
> > Else
> > Faça aquilo.
> > End If
> >
> > Obrigado. Me deu um branco e não consigo encontrar.
> >
> > Fique com Deus.
> > Um grande abraço.
> > Fiscalize o Congresso: http://www.congress oemfoco.ig. com.br
> >
> > Atenciosamente,
> > Alexandre Brum
> >
> >  _ _ _ _ _ _
> > Veja quais são os assuntos do momento no Yahoo! +Buscados
> > http://br.maisbusca dos.yahoo. com
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> __
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função para teste se string está contida na outra

2009-08-19 Por tôpico Nino
INSTR(STRING1, STRING2)

onde String2 é o que vc procura, string1 é onde vc procura






2009/8/19 Alexandre Brum 

>
>
> Galera
>
> Qual a função que eu testo se uma string está contida numa outra?
>
> Ex.: If a (está contida em) b Then
>
>
> Faça isso
> Else
> Faça aquilo.
> End If
>
> Obrigado. Me deu um branco e não consigo encontrar.
>
> Fique com Deus.
> Um grande abraço.
> Fiscalize o Congresso: http://www.congressoemfoco.ig.com.br
>
> Atenciosamente,
> Alexandre Brum
>
> __
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função recursiva com CURSOR

2009-08-06 Por tôpico Roberto Souza Silva
Nossa Elis, show de bola.
Vou me aprofundar mais nesse connect by.

Valeu a dica e precisando de algo, estou a disposição.

Abraços e boa sorte

Roberto

2009/8/6 Elis Azevedo Nery 

>
>
> Corre esta query pra você ver como é que fica.
>
> SELECT RPAD(’ ‘, LEVEL*4 -4 ) ||codigo
> FROM tabela
> CONNECT BY PRIOR codigopai = codigo
> START WITH codigopai IS NOT NULL
>
>
> 
> De: Roberto Souza Silva >
> Para: oracle_br@yahoogrupos.com.br 
> Enviadas: Quinta-feira, 6 de Agosto de 2009 16:50:03
> Assunto: Re: [oracle_br] Função recursiva com CURSOR
>
>
> Boa tarde a todos.
> Elis, acabei resolvendo o problema implementando a maneira como eu estava
> tratando o cursor.
> Agora está funcionando perfeitamente.
> Veja como ficou a implementação:
>
> function Filhos(i integer) return varchar2 as
> CURSOR crCodigos(p1 in integer) IS
> SELECT codigo FROM tabela where codigopai=p1;
> rr crCodigos%rowtype;
> vs varchar2(1000) ;
> vi integer;
> begin
> open crCodigos(i) ;
> loop
> fetch crCodigos into rr;
> exit when (crCodigos%notfound );
> if vs is null then
> vs:=','||rr. codigo||Filhos( rr.codigo) ;
> else
> vs:=vs||','| |rr.codigo| |Filhos(rr. codigo);
> end if;
> end loop;
> close crCodigos;
> return vs;
> end;
>
> Não faço a mínima idéia do uso de connect by.
> Seria possível você me dar um pequeno exemplo?
>
> Muito obrigado pela atenção.
>
> Abraços
>
> Roberto
>
> 2009/8/6 Elis Azevedo Nery 
>
> >
> >
> > Com connect by você não consegue resolver o seu problema?
> >
> >  _ _ __
> > De: Roberto Souza Silva >
> > Para: oracle...@yahoogrup os.com.br 
>
> > Enviadas: Quarta-feira, 5 de Agosto de 2009 20:57:10
> > Assunto: [oracle_br] Função recursiva com CURSOR
> >
> >
> > Caros amigos, boa tarde.
> >
> > Estou tendo alguns problemas com recursividade.
> > Vejam o código abaixo:
> >
> > CREATE OR REPLACE FUNCTION teste(piCodigo IN integer, piCodigoPai IN
> > integer) RETURN VARCHAR2 AS
> > vsResult VARCHAR2(4000) ;
> > --
> > FUNCTION Filhos(i INTEGER) RETURN VARCHAR2 AS
> > vs VARCHAR2(1000) ;
> > vi INTEGER;
> > CURSOR crCodigos(p1 IN INTEGER) IS
> > SELECT codigo FROM tabela WHERE codigopai=p1;
> > BEGIN
> > FOR x IN crCodigos(i) LOOP
> > if vs is null then
> > vs:=x.codigo| |','||Filhos( x.codigo) ;
> > ELSE
> > vs:=vs||','| |x.codigo| |','||Filhos( x.codigo) ;
> > END IF;
> > END LOOP;
> > CLOSE crCodigos;
> > RETURN vs;
> > END;
> > --
> > BEGIN
> > .
> > .
> > vsResult:=Filhos( piCodigo) ;
> > .
> > .
> > RETURN vsResult;
> > END teste3;
> >
> > Bem, não sei se deu para ficar claro, mas o que quero é correr uma tabela
> > que tem uma FK para ela mesma.
> > O problema com o código acima é o ORA-06511 (curso já está aberto).
> > Tentei implementar TYPEs, mas me faltam conhecimentos para lidar com
> eles.
> > Procurei na lista por "recursiva" e não encontrei nada a respeito.
> > Logo não me restou alternativa, tenho que pedir ajuda dos universitários.
> > ehhe
> >
> > Alguém feria a gentileza?
> >
> > Forte abraço a todos e obrigado.
> >
> > Roberto
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >  _ _ _ _ _ _
> > Veja quais são os assuntos do momento no Yahoo! +Buscados
> > http://br.maisbusca dos.yahoo. com
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> __
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Função recursiva com CURSOR

2009-08-06 Por tôpico Roberto Souza Silva
Boa tarde a todos.
Elis, acabei resolvendo o problema implementando a maneira como eu estava
tratando o cursor.
Agora está funcionando perfeitamente.
Veja como ficou a implementação:

function Filhos(i integer) return varchar2 as
  CURSOR crCodigos(p1 in integer) IS
SELECT codigo FROM tabela where codigopai=p1;
  rr crCodigos%rowtype;
  vs varchar2(1000);
  vi integer;
begin
  open crCodigos(i);
  loop
fetch crCodigos into rr;
exit when (crCodigos%notfound);
if vs is null then
  vs:=','||rr.codigo||Filhos(rr.codigo);
else
  vs:=vs||','||rr.codigo||Filhos(rr.codigo);
end if;
  end loop;
  close crCodigos;
  return vs;
end;

Não faço a mínima idéia do uso de connect by.
Seria possível você me dar um pequeno exemplo?

Muito obrigado pela atenção.

Abraços

Roberto

2009/8/6 Elis Azevedo Nery 

>
>
> Com connect by você não consegue resolver o seu problema?
>
> 
> De: Roberto Souza Silva >
> Para: oracle_br@yahoogrupos.com.br 
> Enviadas: Quarta-feira, 5 de Agosto de 2009 20:57:10
> Assunto: [oracle_br] Função recursiva com CURSOR
>
>
> Caros amigos, boa tarde.
>
> Estou tendo alguns problemas com recursividade.
> Vejam o código abaixo:
>
> CREATE OR REPLACE FUNCTION teste(piCodigo IN integer, piCodigoPai IN
> integer) RETURN VARCHAR2 AS
> vsResult VARCHAR2(4000) ;
> --
> FUNCTION Filhos(i INTEGER) RETURN VARCHAR2 AS
> vs VARCHAR2(1000) ;
> vi INTEGER;
> CURSOR crCodigos(p1 IN INTEGER) IS
> SELECT codigo FROM tabela WHERE codigopai=p1;
> BEGIN
> FOR x IN crCodigos(i) LOOP
> if vs is null then
> vs:=x.codigo| |','||Filhos( x.codigo) ;
> ELSE
> vs:=vs||','| |x.codigo| |','||Filhos( x.codigo) ;
> END IF;
> END LOOP;
> CLOSE crCodigos;
> RETURN vs;
> END;
> --
> BEGIN
> .
> .
> vsResult:=Filhos( piCodigo) ;
> .
> .
> RETURN vsResult;
> END teste3;
>
> Bem, não sei se deu para ficar claro, mas o que quero é correr uma tabela
> que tem uma FK para ela mesma.
> O problema com o código acima é o ORA-06511 (curso já está aberto).
> Tentei implementar TYPEs, mas me faltam conhecimentos para lidar com eles.
> Procurei na lista por "recursiva" e não encontrei nada a respeito.
> Logo não me restou alternativa, tenho que pedir ajuda dos universitários.
> ehhe
>
> Alguém feria a gentileza?
>
> Forte abraço a todos e obrigado.
>
> Roberto
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> __
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função

2008-10-03 Por tôpico Andre Santos
Anderson

Talvez tenha algum detalhe que eu não captei... mas basta somar 15 à data,
não?

SELECT sua_data + 15
FROM ...

[ ]

André


Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]> escreveu:
>
>
>
> André, então seria assim: seria data + 15...estava pensando em usar a
> função DECODE e dentro dela solicitar ao usuario duas datas que ficaria
> entre duas variaveis...
>
> Atenciosamente,
> Anderson Ferreira
> Cel: +55 11 8876-7515
> E-mail: [EMAIL PROTECTED] 
> Or [EMAIL PROTECTED] 
>
> To: oracle_br@yahoogrupos.com.br 
> From: [EMAIL PROTECTED] 
> Date: Fri, 3 Oct 2008 14:19:11 -0300
> Subject: Re: [oracle_br] Função
>
> Anderson
>
> O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?
>
> [ ]
>
> André
>
> Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]>
> escreveu:
>
> >
>
> >
>
> > Senhores,
>
> >
>
> > Existe alguma função do oracle, que eu consiga traz data quinzenal?
>
> > Alguem poderia me ajudar?
>
> >
>
> >
>
> > Atenciosamente,
>
> > Anderson Ferreira
>
> > Cel: +55 11 8876-7515
>
> > E-mail: [EMAIL PROTECTED]   40hotmail.com>
>
> > Or [EMAIL PROTECTED]  40mackenzista.com.br>
>
> >
>
> > __
>
> > Receba GRÁTIS as mensagens do Messenger no seu celular quando você
> estiver
>
> > offline. Conheça o MSN Mobile!
>
> > http://mobile.live.com/signup/signup2.aspx?lc=pt-br
>
> >
>
> > [As partes desta mensagem que não continham texto foram removidas]
>
> >
>
> >
>
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> __
> Confira vídeos com notícias do NY Times, gols direto do Lance,
> videocassetadas e muito mais no MSN Video!
> http://video.msn.com/?mkt=pt-br
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função

2008-10-03 Por tôpico Mária Cristina Silva
por nada..
;)

2008/10/3 Anderson Ferreira <[EMAIL PROTECTED]>

>
>
> Cris,
>
> Muito obrigado pela ajuda, vou compilar testar aqui e depois falo o
> resultado.
> []´s
>
>
> Atenciosamente,
> Anderson Ferreira
> Cel: +55 11 8876-7515
> E-mail: [EMAIL PROTECTED] 
> Or [EMAIL PROTECTED] 
>
> To: oracle_br@yahoogrupos.com.br 
> From: [EMAIL PROTECTED] 
> Date: Fri, 3 Oct 2008 14:24:33 -0300
> Subject: Re: [oracle_br] Função
>
> veja se te ajuda..
>
> *select* trunc(*sysdate*),
>
> *case*
>
> *when* to_char(*sysdate*, 'dd') *between* 1 *and* 15 *then*
>
> '1ª Quinzena de ' || to_char(*sysdate*, 'mon')
>
> *else*
>
> '2ª Quinzena de ' || to_char(*sysdate*, 'mon')
>
> *end* quinzena
>
> *from* dual;
>
> *select* trunc(*sysdate*) + 15,
>
> *case*
>
> *when* to_char(*sysdate*, 'dd') + 15 *between* 1 *and* 15 *then*
>
> '1ª Quinzena de ' || to_char(*sysdate*, 'mon')
>
> *else*
>
> '2ª Quinzena de ' || to_char(*sysdate*, 'mon')
>
> *end* quinzena
>
> *from* dual;
>
> *outra forma de fazer*
>
> *select* *max*(*sysdate*) *from* dual
>
> *where* to_char(*sysdate*,'W') = '1'
>
> *union*
>
> *select* *max*(*sysdate*) *from* dual
>
> *where* to_char(*sysdate*,'W') = '2'
>
> 2008/10/3 Andre Santos <[EMAIL PROTECTED]
> >
>
> > Anderson
>
> >
>
> > O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?
>
> >
>
> > [ ]
>
> >
>
> > André
>
> >
>
> > Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]
> >
>
> > escreveu:
>
> > >
>
> > >
>
> > > Senhores,
>
> > >
>
> > > Existe alguma função do oracle, que eu consiga traz data quinzenal?
>
> > > Alguem poderia me ajudar?
>
> > >
>
> > >
>
> > > Atenciosamente,
>
> > > Anderson Ferreira
>
> > > Cel: +55 11 8876-7515
>
> > > E-mail: [EMAIL PROTECTED]   40hotmail.com> 
> > 40hotmail.com>
>
> > > Or [EMAIL PROTECTED]  40mackenzista.com.br>
> > 40mackenzista.com.br>
>
> > >
>
> > > __
>
> > > Receba GRÁTIS as mensagens do Messenger no seu celular quando você
>
> > estiver
>
> > > offline. Conheça o MSN Mobile!
>
> > > http://mobile.live.com/signup/signup2.aspx?lc=pt-br
>
> > >
>
> > > [As partes desta mensagem que não continham texto foram removidas]
>
> > >
>
> > >
>
> > >
>
> >
>
> > [As partes desta mensagem que não continham texto foram removidas]
>
> >
>
> >
>
> >
>
> --
>
> Abraços,
>
> Mária Cristina
>
> Cel: 031-8883-5543
>
> E-mail: [EMAIL PROTECTED] 
>
> MSN: [EMAIL PROTECTED] 
>
> --
>
> "O começo é a parte mais importante do trabalho."
>
> - Platão
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> __
> Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
> http://www.amigosdomessenger.com.br/
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>



-- 
Abraços,
Mária Cristina
Cel: 031-8883-5543
E-mail: [EMAIL PROTECTED]
MSN:   [EMAIL PROTECTED]
-- 
"O começo é a parte mais importante do trabalho."
- Platão


[As partes desta mensagem que não continham texto foram removidas]



RE: [oracle_br] Função

2008-10-03 Por tôpico Anderson Ferreira



Cris,

 

 Muito obrigado pela ajuda, vou compilar testar aqui e depois falo o 
resultado.
[]´s
   

Atenciosamente,
Anderson Ferreira
Cel: +55 11 8876-7515 
E-mail: [EMAIL PROTECTED]
Or [EMAIL PROTECTED]


 


To: oracle_br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Fri, 3 Oct 2008 14:24:33 -0300
Subject: Re: [oracle_br] Função




















veja se te ajuda..



*select* trunc(*sysdate*),

*case*

*when* to_char(*sysdate*, 'dd') *between* 1 *and* 15 *then*

'1ª Quinzena de ' || to_char(*sysdate*, 'mon')

*else*

'2ª Quinzena de ' || to_char(*sysdate*, 'mon')

*end* quinzena

*from* dual;



*select* trunc(*sysdate*) + 15,

*case*

*when* to_char(*sysdate*, 'dd') + 15 *between* 1 *and* 15 *then*

'1ª Quinzena de ' || to_char(*sysdate*, 'mon')

*else*

'2ª Quinzena de ' || to_char(*sysdate*, 'mon')

*end* quinzena

*from* dual;



*outra forma de fazer*



*select* *max*(*sysdate*) *from* dual

*where* to_char(*sysdate*,'W') = '1'

*union*

*select* *max*(*sysdate*) *from* dual

*where* to_char(*sysdate*,'W') = '2'



2008/10/3 Andre Santos <[EMAIL PROTECTED]>



>   Anderson

>

> O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?

>

> [ ]

>

> André

>

> Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]>

> escreveu:

> >

> >

> > Senhores,

> >

> > Existe alguma função do oracle, que eu consiga traz data quinzenal?

> > Alguem poderia me ajudar?

> >

> >

> > Atenciosamente,

> > Anderson Ferreira

> > Cel: +55 11 8876-7515

> > E-mail: [EMAIL PROTECTED]   40hotmail.com>

> > Or [EMAIL PROTECTED]  40mackenzista.com.br>

> >

> > __

> > Receba GRÁTIS as mensagens do Messenger no seu celular quando você

> estiver

> > offline. Conheça o MSN Mobile!

> > http://mobile.live.com/signup/signup2.aspx?lc=pt-br

> >

> > [As partes desta mensagem que não continham texto foram removidas]

> >

> >

> >

>

> [As partes desta mensagem que não continham texto foram removidas]

>

> 

>



-- 

Abraços,

Mária Cristina

Cel: 031-8883-5543

E-mail: [EMAIL PROTECTED]

MSN:   [EMAIL PROTECTED]

-- 

"O começo é a parte mais importante do trabalho."

- Platão



[As partes desta mensagem que não continham texto foram removidas]




  



















_
Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
http://www.amigosdomessenger.com.br/

[As partes desta mensagem que não continham texto foram removidas]



RE: [oracle_br] Função

2008-10-03 Por tôpico Anderson Ferreira


André, então seria assim: seria data + 15...estava pensando em usar a função 
DECODE e dentro dela solicitar ao usuario duas datas que ficaria entre duas 
variaveis...


 


Atenciosamente,
Anderson Ferreira
Cel: +55 11 8876-7515 
E-mail: [EMAIL PROTECTED]
Or [EMAIL PROTECTED]


 


To: oracle_br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Fri, 3 Oct 2008 14:19:11 -0300
Subject: Re: [oracle_br] Função




















Anderson



O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?



[ ]



André



Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]> escreveu:

>

>

> Senhores,

>

> Existe alguma função do oracle, que eu consiga traz data quinzenal?

> Alguem poderia me ajudar?

>

>

> Atenciosamente,

> Anderson Ferreira

> Cel: +55 11 8876-7515

> E-mail: [EMAIL PROTECTED] 

> Or [EMAIL PROTECTED] 

>

> __

> Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver

> offline. Conheça o MSN Mobile!

> http://mobile.live.com/signup/signup2.aspx?lc=pt-br

>

> [As partes desta mensagem que não continham texto foram removidas]

>

> 

>



[As partes desta mensagem que não continham texto foram removidas]




  



















_
Confira vídeos com notícias do NY Times, gols direto do Lance, videocassetadas 
e muito mais no MSN Video!
http://video.msn.com/?mkt=pt-br

[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função

2008-10-03 Por tôpico Mária Cristina Silva
veja se te ajuda..


*select* trunc(*sysdate*),
*case*
*when* to_char(*sysdate*, 'dd') *between* 1 *and* 15 *then*
'1ª Quinzena de ' || to_char(*sysdate*, 'mon')
*else*
'2ª Quinzena de ' || to_char(*sysdate*, 'mon')
*end* quinzena
*from* dual;



*select* trunc(*sysdate*) + 15,
*case*
*when* to_char(*sysdate*, 'dd') + 15 *between* 1 *and* 15 *then*
'1ª Quinzena de ' || to_char(*sysdate*, 'mon')
*else*
'2ª Quinzena de ' || to_char(*sysdate*, 'mon')
*end* quinzena
*from* dual;






*outra forma de fazer*

*select* *max*(*sysdate*) *from* dual
*where* to_char(*sysdate*,'W') = '1'
*union*
*select* *max*(*sysdate*) *from* dual
*where* to_char(*sysdate*,'W') = '2'


2008/10/3 Andre Santos <[EMAIL PROTECTED]>

>   Anderson
>
> O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?
>
> [ ]
>
> André
>
> Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]>
> escreveu:
> >
> >
> > Senhores,
> >
> > Existe alguma função do oracle, que eu consiga traz data quinzenal?
> > Alguem poderia me ajudar?
> >
> >
> > Atenciosamente,
> > Anderson Ferreira
> > Cel: +55 11 8876-7515
> > E-mail: [EMAIL PROTECTED]   40hotmail.com>
> > Or [EMAIL PROTECTED]  40mackenzista.com.br>
> >
> > __
> > Receba GRÁTIS as mensagens do Messenger no seu celular quando você
> estiver
> > offline. Conheça o MSN Mobile!
> > http://mobile.live.com/signup/signup2.aspx?lc=pt-br
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>



-- 
Abraços,
Mária Cristina
Cel: 031-8883-5543
E-mail: [EMAIL PROTECTED]
MSN:   [EMAIL PROTECTED]
-- 
"O começo é a parte mais importante do trabalho."
- Platão


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função

2008-10-03 Por tôpico Andre Santos
Anderson

O que seria a "data quinzenal"? Todo dia 01 e 15 ou a data + 15 dias?

[ ]

André


Em 03/10/08, Anderson Ferreira <[EMAIL PROTECTED]> escreveu:
>
>
> Senhores,
>
> Existe alguma função do oracle, que eu consiga traz data quinzenal?
> Alguem poderia me ajudar?
>
>
> Atenciosamente,
> Anderson Ferreira
> Cel: +55 11 8876-7515
> E-mail: [EMAIL PROTECTED] 
> Or [EMAIL PROTECTED] 
>
> __
> Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver
> offline. Conheça o MSN Mobile!
> http://mobile.live.com/signup/signup2.aspx?lc=pt-br
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] função para retornar os dias a partir de uma data

2008-08-20 Por tôpico Marcio Portes
Estou um pouco enferrujado, na medida em que não tenho participado tanto,
mas acho que essa query ajuda. No decorrer do exemplo, insiro mais linhas
para entrar no intervalo de 30 dias, depois, no resultado, voce pode agrupar
por mes ou formatar da maneira que lhe for conveniente. Fiz a query em uma
tabela só para simplificar a idéia, obviamente é preciso ajustar os joins
para garantir que a data de atendimento seja referida na tabela de serviço.
(espero que ajude).

ops$marcio:DB11G> select * from guia;

   CDGUIA CDUSUARIO ATEND
- - ---
1 1 01/01/2008 00:00:00
1 1 01/02/2008 00:00:00
1 1 01/03/2008 00:00:00
1 1 01/04/2008 00:00:00
1 1 01/05/2008 00:00:00
1 1 01/06/2008 00:00:00
1 1 01/07/2008 00:00:00
1 1 01/08/2008 00:00:00
1 2 01/01/2008 00:00:00
1 2 01/02/2008 00:00:00
1 2 01/03/2008 00:00:00
1 2 01/04/2008 00:00:00
1 2 01/05/2008 00:00:00
1 2 01/06/2008 00:00:00
1 2 01/07/2008 00:00:00
1 2 01/08/2008 00:00:00
1 1 03/01/2008 00:00:00
1 1 13/01/2008 00:00:00
1 1 01/02/2008 00:00:00

19 rows selected.

ops$marcio:DB11G> insert into guia values ( 1, 1, '15/05/2008 00:00:00');

1 row created.

ops$marcio:DB11G> commit;

Commit complete.

ops$marcio:DB11G> select *
  2from (
  3  select cdguia,
  4 cdusuario,
  5 atend,
  6 count(*) over (partition by cdguia, cdusuario
  7order by atend range between 15 preceding
  8 and 15 following ) cnt
  9from guia
 10 )
 11   where cnt > 1
 12  /

   CDGUIA CDUSUARIO ATEND CNT
- - --- -
1 1 01/01/2008 00:00:00 3
1 1 03/01/2008 00:00:00 3
1 1 13/01/2008 00:00:00 3
1 1 01/02/2008 00:00:00 2
1 1 01/02/2008 00:00:00 2
1 1 01/05/2008 00:00:00 2
1 1 15/05/2008 00:00:00 2

7 rows selected.

ops$marcio:DB11G>
ops$marcio:DB11G> insert into guia values ( 1, 2, '15/05/2008 00:00:00');

1 row created.

ops$marcio:DB11G> commit;

Commit complete.

ops$marcio:DB11G> select *
  2from (
  3  select cdguia,
  4 cdusuario,
  5 atend,
  6 count(*) over (partition by cdguia, cdusuario
  7order by atend range between 15 preceding
  8 and 15 following ) cnt
  9from guia
 10 )
 11   where cnt > 1
 12  /

   CDGUIA CDUSUARIO ATEND CNT
- - --- -
1 1 01/01/2008 00:00:00 3
1 1 03/01/2008 00:00:00 3
1 1 13/01/2008 00:00:00 3
1 1 01/02/2008 00:00:00 2
1 1 01/02/2008 00:00:00 2
1 1 01/05/2008 00:00:00 2
1 1 15/05/2008 00:00:00 2
1 2 01/05/2008 00:00:00 2
1 2 15/05/2008 00:00:00 2

9 rows selected.



2008/8/20 ewerton_grillo <[EMAIL PROTECTED]>

>   Tenho uma tabela de guia onde tem os campos
> cdguia, cdusuario, cdprestador, cdespecialidade e dataatendimento
> e uma tabela servico onde tem o cdguia e cdservico
>
> preciso verificar se durante o período de 01/01/2008 a 30/07/2008 se o
> usuário realizou mais de uma consulta inferior a 30 dias, sempre
> verificando da última consulta para a anterior não importando o
> período e sim os 30 dias, para o mesmo prestador e especialidade.
>
> como posso fazer isso?
>
>  
>



-- 
Marcio Portes
http://mportes.blogspot.com


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] função com múltiplos parâmetros

2008-05-28 Por tôpico Fabiano Arndt
Valeu Eduardo,

mas o que eu preciso, ou precisava, já que consegui resolver o
problema usando a função GREATEST, é criar uma function que receba
vários parâmetros.

essa função eu pretendia usar diretamente em algumas sql´s que tenho
na minha aplicação.

no seu exemplo eu consigo passar vários valores para a function, mas
através de um único parâmetro, que é um record.

mesmo assim assim valeu pela força,

agora eu to mais é na curiosidade mesmo de como criar uma função
parecidade com o GREATEST, que permite passar um número indefinido de
parâmetros. se alguém tiver uma idéia de como esse tipo de função é
implementada me avise.

abraço,
Fabiano.



2008/5/27 Eduardo Leite <[EMAIL PROTECTED]>:
> Fabiano, tenho algo parecido com isso.. dá uma olhada..
>
> declare
> -- Especificacao do type
> type rec_prm is record ( p_param varchar2(100),
> p_value varchar2(1000),
> p_type varchar2(50),
> p_format varchar2(100)
> );
> type tab_prm is table of rec_prm index by binary_integer;
> tTab_prm tab_prm;
> -- Procedimento que recebera os valores
> procedure prc_prm ( p_tab_prm tab_prm ) is
> l_dHoje Date;
> begin
> dbms_output.put_line( '*' );
> for c in 1..p_tab_prm.count
> loop
> if p_tab_prm(c).p_type = 'Date' then
> l_dHoje := To_date( p_tab_prm(c).p_value, p_tab_prm(c).p_format );
> end if;
> dbms_output.put_line( 'Param=' || p_tab_prm(c).p_param ||
> ' Value=' || p_tab_prm(c).p_value ||
> ' Type=' || p_tab_prm(c).p_type ||
> ' Format=' || p_tab_prm(c).p_format );
> end loop;
> dbms_output.put_line( '*' );
> dbms_output.put_line( 'Total de parametros ' || p_tab_prm.count );
> dbms_output.put_line( '*' );
> end;
> begin
> -- Linha 1
> tTab_prm(1).p_param := 'Nome:';
> tTab_prm(1).p_value := 'Eduardo';
> tTab_prm(1).p_type := 'Char';
> tTab_prm(1).p_format := null;
> -- Linha 2
> tTab_prm(2).p_param := 'Hoje:';
> tTab_prm(2).p_value := '27/05/2008 18:10:10';
> tTab_prm(2).p_type := 'Date';
> tTab_prm(2).p_format := 'dd/mm/ hh24:mi:ss';
> prc_prm( p_tab_prm => tTab_prm );
> end;
> /
>
> Edu
>
> Fabiano Arndt <[EMAIL PROTECTED]> escreveu: Gleyson, eu já possuo
> algumas function/procedures em que uso
>
> collections, mas agora preciso de algo diferente.
>
> onde vou usar a function, não tenho como passar um array, tenho que
> passar os parâmetros diretamente.
>
> o que eu gostaria mesmo é criar uma function parecida com o GREATEST
> que retorna o maior valor da lista de argumentos,
>
> inclusive acho que essa função por hora já vai resolver meu problema e
> não irei nem precisar criar outra função.
>
> mas se alguem souber como criar uma função desse tipo, me avise.
>
> valeu, abraço.
>
> Fabiano.
>
> 2008/5/27 Gleyson Melo <[EMAIL PROTECTED]>:
>> Fabiano,
>>
>> Acredito que a melhor forma de resolver o seu problema seja estudar um
>> pouquinho de Collections do PL/SQL e receber, como parâmetro da função,
>> uma
>> coleção de objetos (Sim, uma matriz).
>>
>> 2008/5/27 Fabiano Arndt <[EMAIL PROTECTED]>:
>>
>>> Bom dia pessoal,
>>>
>>> to com uma certa dificuldade para criar uma função que receba
>>> múltiplos parâmetros, ou seja
>>> uma função que eu possa passar quantos parâmetros eu quiser.
>>>
>>> por exemplo,
>>>
>>> func(1, 2, 3, 4, 5)
>>> ou
>>> func(10)
>>> ou apenas
>>> func()
>>> ou qualquer outro número de parâmetros
>>>
>>> gostaria também de saber como eu faria nesse caso pra saber quantos
>>> parâmetros foram passados para a function e como acessá-los
>>>
>>> uso 9i.
>>>
>>> obrigado,
>>> Fabiano.
>>>
>>>
>>
>> --
>> Atenciosamente,
>> Gleyson Melo
>> Oracle Database 10g Administrator Certified Professional
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>>
>
>
>
>
> -
> Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
> armazenamento!
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 


Re: [oracle_br] função com múltiplos par âmetros

2008-05-27 Por tôpico Eduardo Leite
Fabiano, tenho algo parecido com isso.. dá uma olhada.. 


declare
   -- Especificacao do type
   type rec_prm is record ( p_param  varchar2(100),
p_value  varchar2(1000),
p_type   varchar2(50),
p_format varchar2(100)
  );
   type tab_prm is table of rec_prm index by binary_integer;
   tTab_prm tab_prm;
   -- Procedimento que recebera os valores
   procedure prc_prm ( p_tab_prm tab_prm ) is
  l_dHoje Date;
   begin
  dbms_output.put_line( '*' );
  for c in 1..p_tab_prm.count
  loop
 if p_tab_prm(c).p_type = 'Date' then
l_dHoje := To_date( p_tab_prm(c).p_value, p_tab_prm(c).p_format );
 end if;
 dbms_output.put_line( 'Param='   || p_tab_prm(c).p_param ||
   ' Value='  || p_tab_prm(c).p_value ||
   ' Type='   || p_tab_prm(c).p_type  ||
   ' Format=' || p_tab_prm(c).p_format );
  end loop;
  dbms_output.put_line( '*' );
  dbms_output.put_line( 'Total de parametros ' || p_tab_prm.count );
  dbms_output.put_line( '*' );
   end;
begin
   -- Linha 1
   tTab_prm(1).p_param  := 'Nome:';
   tTab_prm(1).p_value  := 'Eduardo';
   tTab_prm(1).p_type   := 'Char';
   tTab_prm(1).p_format := null;
   -- Linha 2
   tTab_prm(2).p_param  := 'Hoje:';
   tTab_prm(2).p_value  := '27/05/2008 18:10:10';
   tTab_prm(2).p_type   := 'Date';
   tTab_prm(2).p_format := 'dd/mm/ hh24:mi:ss';
   prc_prm( p_tab_prm => tTab_prm );
end;
/


Edu

Fabiano Arndt <[EMAIL PROTECTED]> escreveu: 
Gleyson, eu já possuo algumas function/procedures em que uso
 collections, mas agora preciso de algo diferente.
 
 onde vou usar a function, não tenho como passar um array, tenho que
 passar os parâmetros diretamente.
 
 o que eu gostaria mesmo é criar uma function parecida com o GREATEST
 que retorna o maior valor da lista de argumentos,
 
 inclusive acho que essa função por hora já vai resolver meu problema e
 não irei nem precisar criar outra função.
 
 mas se alguem souber como criar uma função desse tipo, me avisem.
 
 valeu, abraço.
 
 Fabiano.
 
 2008/5/27 Gleyson Melo <[EMAIL PROTECTED]>:
 > Fabiano,
 >
 > Acredito que a melhor forma de resolver o seu problema seja estudar um
 > pouquinho de Collections do PL/SQL e receber, como parâmetro da função, uma
 > coleção de objetos (Sim, uma matriz).
 >
 > 2008/5/27 Fabiano Arndt <[EMAIL PROTECTED]>:
 >
 >> Bom dia pessoal,
 >>
 >> to com uma certa dificuldade para criar uma função que receba
 >> múltiplos parâmetros, ou seja
 >> uma função que eu possa passar quantos parâmetros eu quiser.
 >>
 >> por exemplo,
 >>
 >> func(1, 2, 3, 4, 5)
 >> ou
 >> func(10)
 >> ou apenas
 >> func()
 >> ou qualquer outro número de parâmetros
 >>
 >> gostaria também de saber como eu faria nesse caso pra saber quantos
 >> parâmetros foram passados para a function e como acessá-los
 >>
 >> uso 9i.
 >>
 >> obrigado,
 >> Fabiano.
 >>
 >>
 >
 > --
 > Atenciosamente,
 > Gleyson Melo
 > Oracle Database 10g Administrator Certified Professional
 >
 > [As partes desta mensagem que não continham texto foram removidas]
 >
 > 
 
 
   

   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função de código sequ encial SEM deixar numero "vago" 1 "" 3 4 5 6

2007-11-28 Por tôpico Roberto Amorim
Era aí que eu queria chegar. Isso parece com registros sendo apagados. 
Não acho isso uma boa estratégia, registros errados refletem ações 
erradas dos usuários. Se não devem existir, não devem ser criados, tem 
que barrar na hora da inclusão. Se não foram inúteis sempre, isso 
reflete uma mudança de estado e uma ação do usuário, que se perde no 
caso do apagamento. O certo é marcar o registro como inválido e manter o 
registro da ação que o invalidou.
Não que o usuário vá dizer depois que não apagou nada e o registro sumiu 
sozinho, mas por uma questão de deixar as coisas bem claras sobre as 
mudanças na base de dados.
Se ainda fosse na época do arquivo relativo do Cobol que o número era a 
posição física do registro eu até entenderia, mas uma chave é 
basicamente um elo de ligação para relacionamentos, só isso, não importa 
muito o que tem lá. Por isso é que se tem o sequence.


Andre Santos escreveu:
> Gabriel
>
> Pegando carona na pergunta do Roberto... é tão importante assim não deixar
> números "vagos" na seqüência?
>
> [ ]
>
> André
>
>
> Em 28/11/07, Roberto Amorim <[EMAIL PROTECTED]> escreveu:
>   
>>   Pode parecer ingenuidade minha, mas, porque não usar o sequence?
>>
>> Gabriel Herdt escreveu:
>> 
>>> Pessoal to com um problema. Fiz essa função no meu oracle 10g
>>> enteprise. em que ele faz um sequence do campo x e da tabela x.
>>> A função atende muito bem ate um certo numero de dados na tabela
>>> depois fica muito lento(20.000 registros +).
>>>
>>> O que posso fazer para otimizar a rotina?
>>> Objetivo dela é fazer seqüencia, e no caso de algum código for
>>> detetado. o próximo cadastrado assuma seu lugar.
>>>
>>> FUNCTION FN_NVAGO
>>> ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo
>>> pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela
>>> pr_texto OUT varchar2) -- Paramentro de saida msg de erro
>>> RETURN NUMBER IS
>>> ln_cont NUMBER;-- variavel de retorno informando o menor "buraco"
>>> na sequencia
>>> ln_tam NUMBER; -- variavel informando o maior numero da sequencia
>>> i NUMBER; -- contador do loop
>>> BEGIN
>>> pr_texto := '';
>>>
>>> --SQL PARA vereficar maior numero da sequencia do campo e tabela
>>> infomado por parametro
>>> EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB
>>> into ln_tam;
>>> if ln_tam is null then
>>> Return 1;
>>> end if;
>>> --For de 1 ate numero maximo de sequencia
>>> FOR i IN 1..ln_tam LOOP
>>> -- select para localizar "buracos" na sequencia e informar
>>> menor numero faltando na seq
>>> EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||'
>>> Where '||pn_nomeCAM||' = '||i into ln_cont;
>>> IF ln_cont = 0 THEN
>>> RETURN i;
>>> EXIT;
>>> END IF;
>>> END LOOP;
>>> If ln_cont = 1 THEN -- se nao achar nada pega o maior numero de
>>> sequencia e somar mais 1
>>> return ln_tam+1;
>>> end if;
>>> EXCEPTION
>>> WHEN OTHERS THEN
>>> ROLLBACK;
>>> pr_texto := 'Erro -3000 : Erro ao gerar sequencia';
>>> DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ':
>>> ' || SQLERRM, 1, 255));
>>> END;
>>>
>>>
>>>
>>>
>>>   
 Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package »
 
>> Procedure » Scripts » Tutoriais acesse:
>> http://www.oraclebr.com.br/codigo/ListaCodigo.php
>> 
>>> --
>>>
>>>   
 Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
 
>> inteira responsabilidade de seus remetentes.
>> 
>>> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
>>> --
>>>
>>>   
 O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
 
>> http://www.oraclebr.com.br/
>> 
>>> --
>>> Links do Yahoo! Grupos
>>>
>>>
>>>
>>>
>>>
>>>   
>> 
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>   
>> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure 
>> » Scripts » Tutoriais acesse: 
>> http://www.oraclebr.com.br/codigo/ListaCodigo.php 
>> 
> --
>   
>> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>> responsabilidade de seus remetentes.
>> 
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> --
>   
>> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>> http://www.oraclebr.com.br/  
>> 
> 
>   
> Links do Yahoo! Grupos
>
>  
>
>
>   


RE: [oracle_br] Função de código sequenc ial SEM deixar numero "vago" 1 "" 3 4 5 6

2007-11-28 Por tôpico Luiz Ribeiro
Gabriel,

 

Tínhamos uma aplicação que necessitava fazer algo parecido, e o que fazíamos é 
ter uma tabela de controle com tabela + coluna + ultimo_valor

 



From: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of Andre 
Santos
Sent: quarta-feira, 28 de novembro de 2007 11:17
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Função de código sequencial SEM deixar numero "vago" 1 
"" 3 4 5 6

 

Gabriel

Pegando carona na pergunta do Roberto... é tão importante assim não deixar
números "vagos" na seqüência?

[ ]

André

Em 28/11/07, Roberto Amorim <[EMAIL PROTECTED] 
<mailto:roberto%40edsonqueiroz.com.br> > escreveu:
>
> Pode parecer ingenuidade minha, mas, porque não usar o sequence?
>
> Gabriel Herdt escreveu:
> > Pessoal to com um problema. Fiz essa função no meu oracle 10g
> > enteprise. em que ele faz um sequence do campo x e da tabela x.
> > A função atende muito bem ate um certo numero de dados na tabela
> > depois fica muito lento(20.000 registros +).
> >
> > O que posso fazer para otimizar a rotina?
> > Objetivo dela é fazer seqüencia, e no caso de algum código for
> > detetado. o próximo cadastrado assuma seu lugar.
> >
> > FUNCTION FN_NVAGO
> > ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo
> > pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela
> > pr_texto OUT varchar2) -- Paramentro de saida msg de erro
> > RETURN NUMBER IS
> > ln_cont NUMBER;-- variavel de retorno informando o menor "buraco"
> > na sequencia
> > ln_tam NUMBER; -- variavel informando o maior numero da sequencia
> > i NUMBER; -- contador do loop
> > BEGIN
> > pr_texto := '';
> >
> > --SQL PARA vereficar maior numero da sequencia do campo e tabela
> > infomado por parametro
> > EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB
> > into ln_tam;
> > if ln_tam is null then
> > Return 1;
> > end if;
> > --For de 1 ate numero maximo de sequencia
> > FOR i IN 1..ln_tam LOOP
> > -- select para localizar "buracos" na sequencia e informar
> > menor numero faltando na seq
> > EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||'
> > Where '||pn_nomeCAM||' = '||i into ln_cont;
> > IF ln_cont = 0 THEN
> > RETURN i;
> > EXIT;
> > END IF;
> > END LOOP;
> > If ln_cont = 1 THEN -- se nao achar nada pega o maior numero de
> > sequencia e somar mais 1
> > return ln_tam+1;
> > end if;
> > EXCEPTION
> > WHEN OTHERS THEN
> > ROLLBACK;
> > pr_texto := 'Erro -3000 : Erro ao gerar sequencia';
> > DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ':
> > ' || SQLERRM, 1, 255));
> > END;
> >
> >
> >
> >
> >> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package »
> Procedure » Scripts » Tutoriais acesse:
> http://www.oraclebr.com.br/codigo/ListaCodigo.php 
> <http://www.oraclebr.com.br/codigo/ListaCodigo.php> 
> >>
> > --
> >
> >> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> >>
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> > <http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/> 
> > --
> >
> >> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/ <http://www.oraclebr.com.br/> 
> >>
> > --
> > Links do Yahoo! Grupos
> >
> >
> >
> >
> >
> 
>

[As partes desta mensagem que não continham texto foram removidas]

 



[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função de código sequencial SEM deixar numero "vago" 1 "" 3 4 5 6

2007-11-28 Por tôpico Andre Santos
Gabriel

Pegando carona na pergunta do Roberto... é tão importante assim não deixar
números "vagos" na seqüência?

[ ]

André


Em 28/11/07, Roberto Amorim <[EMAIL PROTECTED]> escreveu:
>
>   Pode parecer ingenuidade minha, mas, porque não usar o sequence?
>
> Gabriel Herdt escreveu:
> > Pessoal to com um problema. Fiz essa função no meu oracle 10g
> > enteprise. em que ele faz um sequence do campo x e da tabela x.
> > A função atende muito bem ate um certo numero de dados na tabela
> > depois fica muito lento(20.000 registros +).
> >
> > O que posso fazer para otimizar a rotina?
> > Objetivo dela é fazer seqüencia, e no caso de algum código for
> > detetado. o próximo cadastrado assuma seu lugar.
> >
> > FUNCTION FN_NVAGO
> > ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo
> > pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela
> > pr_texto OUT varchar2) -- Paramentro de saida msg de erro
> > RETURN NUMBER IS
> > ln_cont NUMBER;-- variavel de retorno informando o menor "buraco"
> > na sequencia
> > ln_tam NUMBER; -- variavel informando o maior numero da sequencia
> > i NUMBER; -- contador do loop
> > BEGIN
> > pr_texto := '';
> >
> > --SQL PARA vereficar maior numero da sequencia do campo e tabela
> > infomado por parametro
> > EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB
> > into ln_tam;
> > if ln_tam is null then
> > Return 1;
> > end if;
> > --For de 1 ate numero maximo de sequencia
> > FOR i IN 1..ln_tam LOOP
> > -- select para localizar "buracos" na sequencia e informar
> > menor numero faltando na seq
> > EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||'
> > Where '||pn_nomeCAM||' = '||i into ln_cont;
> > IF ln_cont = 0 THEN
> > RETURN i;
> > EXIT;
> > END IF;
> > END LOOP;
> > If ln_cont = 1 THEN -- se nao achar nada pega o maior numero de
> > sequencia e somar mais 1
> > return ln_tam+1;
> > end if;
> > EXCEPTION
> > WHEN OTHERS THEN
> > ROLLBACK;
> > pr_texto := 'Erro -3000 : Erro ao gerar sequencia';
> > DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ':
> > ' || SQLERRM, 1, 255));
> > END;
> >
> >
> >
> >
> >> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package »
> Procedure » Scripts » Tutoriais acesse:
> http://www.oraclebr.com.br/codigo/ListaCodigo.php
> >>
> > --
> >
> >> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> >>
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> > --
> >
> >> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> >>
> > --
> > Links do Yahoo! Grupos
> >
> >
> >
> >
> >
> 
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função de código sequ encial SEM deixar numero "vago" 1 "" 3 4 5 6

2007-11-28 Por tôpico Roberto Amorim
Pode parecer ingenuidade minha, mas, porque não usar o sequence?

Gabriel Herdt escreveu:
> Pessoal to com um problema. Fiz essa função no meu oracle 10g
> enteprise. em que ele faz um sequence do campo x e da tabela x.
> A função atende muito bem ate um certo numero de dados na tabela
> depois fica muito lento(20.000 registros +).
>
> O que posso fazer para otimizar a rotina?
> Objetivo dela é fazer seqüencia, e no caso de algum código for
> detetado. o próximo cadastrado assuma seu lugar.
>
> FUNCTION FN_NVAGO
>   ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo
> pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela
> pr_texto OUT varchar2) -- Paramentro de saida msg de erro
>   RETURN  NUMBER IS
> ln_cont NUMBER;-- variavel de retorno informando o menor "buraco"
> na sequencia
> ln_tam NUMBER; -- variavel informando o maior numero da sequencia
> i NUMBER; -- contador do loop
> BEGIN 
> pr_texto := '';
> 
> --SQL PARA vereficar maior numero da sequencia do campo e tabela
> infomado por parametro
> EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB
> into ln_tam; 
> if ln_tam is null then
> Return 1;
> end if;
> --For de 1 ate numero maximo de sequencia
> FOR i IN 1..ln_tam LOOP
> -- select para localizar "buracos" na sequencia e informar
> menor numero faltando na seq
> EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||'
> Where '||pn_nomeCAM||' = '||i into ln_cont;
> IF ln_cont = 0 THEN
>RETURN i;
>EXIT;
> END IF;
> END LOOP;
> If ln_cont = 1 THEN -- se nao achar nada pega o maior numero de
> sequencia e somar mais 1
> return ln_tam+1;
> end if;
> EXCEPTION
>   WHEN OTHERS THEN
> ROLLBACK;
> pr_texto := 'Erro -3000 : Erro ao gerar sequencia';
> DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ':
> ' || SQLERRM, 1, 255));
> END;
>
>
>
>   
>> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure 
>> » Scripts » Tutoriais acesse: 
>> http://www.oraclebr.com.br/codigo/ListaCodigo.php 
>> 
> --
>   
>> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>> responsabilidade de seus remetentes.
>> 
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> --
>   
>> O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>> http://www.oraclebr.com.br/  
>> 
> 
>   
> Links do Yahoo! Grupos
>
>  
>
>
>   


Re: [oracle_br] Função usando a V$SESSION ...

2007-02-22 Por tôpico Josÿffffffffffe9 Ferreira
Rodrigo dê uma olhada

 SELECT V.SID
 , V.SERIAL#
 , V.PROCESS
 , V.USERNAME
 , V.STATUS
 , V.OSUSER
 , V.MACHINE
 , V.TERMINAL
 , TO_CHAR(V. LOGON_TIME, 'DD/MM/ HH24:MI:SS')
LOGON_TIME
 , V.PROGRAM
 , V.MODULE
 , V.LAST_CALL_ET
 , 'ALTER SYSTEM KILL SESSION '
 || chr(39)||V. SID||','| |V. SERIAL#|| chr(39)|| '
 IMMEDIATE;'
 FROM V$SESSION V,V$PROCESS P
 WHERE v.paddr= p.addr
/


voce esqueceu da V$process
e essa coluna > > , V$SESSION.SERVICE_NAME
 ,nao existe


Jose Adriano 
Dba Oracle





--- Rodrigo Passos <[EMAIL PROTECTED]> escreveu:

> Nelson,
> 
> Experimente se conectar como sys e dar o privilégio
> de Select diretamente
> para o usuário na V$SESSION.
> 
> Abraços,
> 
> Rodrigo
> 
> 
> On 2/22/07, Nelson Antonio da Cruz Covolo
> <[EMAIL PROTECTED]> wrote:
> >
> >   Olá pesssoal,
> >
> > Preciso criar um cursor ("BUSCA_CONEXOES_BANCO")
> dentro de uma função
> > ("FN_DESCONECTA_USUARIO"), conforme a seguir:
> >
> > -- INICIO FUNÇÃO
> 
> >
> > CREATE OR REPLACE FUNCTION
> NACOVOLO.FN_DESCONECTA_USUARIO( P_USUARIO
> > IN VARCHAR2
> > , P_PROCESS
> > IN VARCHAR2 )
> > RETURN VARCHAR2 IS
> >
> > S_PROCESS VARCHAR2(20);
> >
> >
> > CURSOR BUSCA_CONEXOES_BANCO IS
> > SELECT V$SESSION.SID
> > , V$SESSION.SERIAL#
> > , V$SESSION.PROCESS
> > , V$SESSION.USERNAME
> > , V$SESSION.STATUS
> > , V$SESSION.OSUSER
> > , V$SESSION.MACHINE
> > , V$SESSION.TERMINAL
> > , TO_CHAR(V$SESSION.LOGON_TIME,'DD/MM/
> HH24:MI:SS')
> > LOGON_TIME
> > , V$SESSION.PROGRAM
> > , V$SESSION.MODULE
> > , V$SESSION.SERVICE_NAME
> > , V$SESSION.LAST_CALL_ET
> > , 'ALTER SYSTEM KILL SESSION '
> > ||
>
chr(39)||V$SESSION.SID||','||V$SESSION.SERIAL#||chr(39)||'
> > IMMEDIATE;'
> > FROM V$SESSION
> > WHERE V$SESSION.PROCESS = S_PROCESS;
> >
> > begin
> > --for BUSCA_CONEXOES_BANCO_ITENS in
> BUSCA_CONEXOES_BANCO loop
> > --end loop;
> > return('OK');
> > end FN_DESCONECTA_USUARIO;
> >
> > -- FIM FUNÇÃO
>
---
> >
> > Porém esta ocorrendo erro na linha do "FROM
> V$SESSION" conforme
> > abaixo:
> >
> > Compilation errors for FUNCTION
> NACOVOLO.FN_DESCONECTA_USUARIO
> >
> > Error: PL/SQL: ORA-00942: table or view does not
> exist
> > Line: 24
> > Text: FROM V$SESSION
> >
> > Error: PL/SQL: SQL Statement ignored
> > Line: 9
> > Text: SELECT V$SESSION.SID
> >
> > O usuário que estou utilizando para criar essa
> função tem direitos de
> > CONNECT, DBA e RESOURCES
> >
> > O sistema ERP que temos, quando o usuário faz
> login ele cria 4
> > sessões no banco com o mesmo número de processo,
> sendo assim quero
> > criar essa função com o objetivo de finalizar as
> sessões que o
> > sistema criou.
> >
> > Agradeço atenção e ficarei na expectativa de uma
> ajuda.
> >
> > Atenciosamente,
> >
> > Nelson Antonio
> >
> > 
> >
> 
> 
> [As partes desta mensagem que não continham texto
> foram removidas]
> 
> 


__
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 


Re: [oracle_br] Função usando a V$SESSION ...

2007-02-22 Por tôpico Rodrigo Passos
Nelson,

Experimente se conectar como sys e dar o privilégio de Select diretamente
para o usuário na V$SESSION.

Abraços,

Rodrigo


On 2/22/07, Nelson Antonio da Cruz Covolo <[EMAIL PROTECTED]> wrote:
>
>   Olá pesssoal,
>
> Preciso criar um cursor ("BUSCA_CONEXOES_BANCO") dentro de uma função
> ("FN_DESCONECTA_USUARIO"), conforme a seguir:
>
> -- INICIO FUNÇÃO 
>
> CREATE OR REPLACE FUNCTION NACOVOLO.FN_DESCONECTA_USUARIO( P_USUARIO
> IN VARCHAR2
> , P_PROCESS
> IN VARCHAR2 )
> RETURN VARCHAR2 IS
>
> S_PROCESS VARCHAR2(20);
>
>
> CURSOR BUSCA_CONEXOES_BANCO IS
> SELECT V$SESSION.SID
> , V$SESSION.SERIAL#
> , V$SESSION.PROCESS
> , V$SESSION.USERNAME
> , V$SESSION.STATUS
> , V$SESSION.OSUSER
> , V$SESSION.MACHINE
> , V$SESSION.TERMINAL
> , TO_CHAR(V$SESSION.LOGON_TIME,'DD/MM/ HH24:MI:SS')
> LOGON_TIME
> , V$SESSION.PROGRAM
> , V$SESSION.MODULE
> , V$SESSION.SERVICE_NAME
> , V$SESSION.LAST_CALL_ET
> , 'ALTER SYSTEM KILL SESSION '
> || chr(39)||V$SESSION.SID||','||V$SESSION.SERIAL#||chr(39)||'
> IMMEDIATE;'
> FROM V$SESSION
> WHERE V$SESSION.PROCESS = S_PROCESS;
>
> begin
> --for BUSCA_CONEXOES_BANCO_ITENS in BUSCA_CONEXOES_BANCO loop
> --end loop;
> return('OK');
> end FN_DESCONECTA_USUARIO;
>
> -- FIM FUNÇÃO ---
>
> Porém esta ocorrendo erro na linha do "FROM V$SESSION" conforme
> abaixo:
>
> Compilation errors for FUNCTION NACOVOLO.FN_DESCONECTA_USUARIO
>
> Error: PL/SQL: ORA-00942: table or view does not exist
> Line: 24
> Text: FROM V$SESSION
>
> Error: PL/SQL: SQL Statement ignored
> Line: 9
> Text: SELECT V$SESSION.SID
>
> O usuário que estou utilizando para criar essa função tem direitos de
> CONNECT, DBA e RESOURCES
>
> O sistema ERP que temos, quando o usuário faz login ele cria 4
> sessões no banco com o mesmo número de processo, sendo assim quero
> criar essa função com o objetivo de finalizar as sessões que o
> sistema criou.
>
> Agradeço atenção e ficarei na expectativa de uma ajuda.
>
> Atenciosamente,
>
> Nelson Antonio
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Função converter coluna x linha

2006-08-02 Por tôpico Rodrigo Cavalcante
Realizei o sql no Oracle Enterpise Edition 9i. 
 
 Na verdade fiz duas sub queries. Depois do sql orginal, fiz dele um sub
select pegando usando atraves do case e retornei os valores concatenado,
depois fiz outra query em cima desse case agrupando os valores e dando
substr e instr.
 
Att.
 
Rodrigo Cavalcante
 Aprendiz-Oracle

- Original Message - 
From: Thiago  <mailto:[EMAIL PROTECTED]> Menon 
To: oracle_br@yahoogrupos.com.br <mailto:oracle_br@yahoogrupos.com.br>  
Sent: Wednesday, August 02, 2006 9:09 AM
Subject: Re: [oracle_br] Função converter coluna x linha

Só uma dúvida isso funciona apartir de qual versão do Oracle ?

Thiago

Rodrigo Cavalcante escreveu:

>Olá Márcia, valeu pela dica, fiz de uma maneira com vários subselect e
>funcionou.
> 
>Agradeço pela atenção.
> 
>Att.
> 
>Aprendiz-Oracle
>
>- Original Message - 
>From: Marcia Bussolaro < mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> >  
>To: oracle_br@yahoogrupos.com.br <mailto:oracle_br@yahoogrupos.com.br>

>Sent: Tuesday, August 01, 2006 10:00 AM
>Subject: Re: [oracle_br] Função converter coluna x linha
>
>Oi,
>
>  Não testei, mas deve ser mais ou menos assim:
>
>select 
>  L01,
>  L02,
>  L03
>from (
>  select
>(case when coluna='01' then valor else null end) L01,
>(case when coluna='02' then valor else null end) L02,
>(case when coluna='03' then valor else null end) L03
>  from
>tabela);
>
>[]
>Marcia
>
>
>
>
>On Tue, 1 Aug 2006 09:31:32 -0300, Rodrigo Cavalcante
><[EMAIL PROTECTED]> escreveu:
>
>  
>
>>De: Rodrigo Cavalcante <[EMAIL PROTECTED]>
>>Data: Tue, 1 Aug 2006 09:31:32 -0300
>>Para: oracle_br@yahoogrupos.com.br
>>Assunto: [oracle_br] Função converter coluna x linha
>>
>>
>>Srs.
>> 
>>Existe alguma funcão sql no oracle, para transformar linha x
>>
>>
>coluna.
>  
>
>>Por exemplo meu select trás da seguinte forma:
>> 
>>L 01 1068031,62 1308795,08
>>L 02   937927,81 1149311,67
>>L 03852139,6  1046022,15
>>L 04  791363,86  976526,37
>>L 05  8046,43  16027,23
>>L 06  2326,69  6162,06
>>L 07   1726,7   4668,95
>> 
>> Queria mostrar assim:
>> 
>>L 01 02 03 04 05 06 07 e os valores abaixo de cada um deles.
>> 
>>Att.
>> 
>>Rodrigo Cavalcante
>>Aprendiz-Oracle
>>  
>>
>>
>>[As partes desta mensagem que não continham texto foram removidas]
>>
>>
>>
>>
>>
> 
>
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>
>
>
>---
---
>Atenção! As mensagens deste grupo são de acesso público e de inteira
responsabilidade de seus remetentes.
>Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
<http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/>  
>---
---_
_
>
>Este Grupo recebe o apoio da SQL Magazine -
www.devmedia.com.br/sqlmagazine 
>__
>O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo,
tenha o link do mesmo para evitar trafego(pedidos) desnecessário. 
>Links do Yahoo! Grupos
>
>
>
>
> 
>
>
>
>  
>
 



[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função converter coluna x linha

2006-08-02 Por tôpico Marcia Bussolaro
O case, se não me falhe a memória, funciona a partir da versão 9. Nas versões 
anteriores, você pode usar decode.

On Wed, 02 Aug 2006 09:09:43 -0300, Thiago Menon <[EMAIL PROTECTED]> escreveu:

> De: Thiago Menon <[EMAIL PROTECTED]>
> Data: Wed, 02 Aug 2006 09:09:43 -0300
> Para: oracle_br@yahoogrupos.com.br
> Assunto: Re: [oracle_br] Função converter coluna x linha
> 
> 
> Só uma dúvida isso funciona apartir de qual versão do Oracle ?
> 
> Thiago
> 
> Rodrigo Cavalcante escreveu:
> 
> >Olá Márcia, valeu pela dica, fiz de uma maneira com vários subselect e
> >funcionou.
> > 
> >Agradeço pela atenção.
> > 
> >Att.
> > 
> >Aprendiz-Oracle
> >
> >- Original Message - 
> >From: Marcia Bussolaro <mailto:[EMAIL PROTECTED]>  
> >To: oracle_br@yahoogrupos.com.br <mailto:oracle_br@yahoogrupos.com.br>  
> >Sent: Tuesday, August 01, 2006 10:00 AM
> >Subject: Re: [oracle_br] Função converter coluna x linha
> >
> >Oi,
> >
> >  Não testei, mas deve ser mais ou menos assim:
> >
> >select 
> >  L01,
> >  L02,
> >  L03
> >from (
> >  select
> >(case when coluna='01' then valor else null end) L01,
> >(case when coluna='02' then valor else null end) L02,
> >(case when coluna='03' then valor else null end) L03
> >  from
> >tabela);
> >
> >[]
> >Marcia
> >
> >
> >
> >
> >On Tue, 1 Aug 2006 09:31:32 -0300, Rodrigo Cavalcante
> ><[EMAIL PROTECTED]> escreveu:
> >
> >  
> >
> >>De: Rodrigo Cavalcante <[EMAIL PROTECTED]>
> >>Data: Tue, 1 Aug 2006 09:31:32 -0300
> >>Para: oracle_br@yahoogrupos.com.br
> >>Assunto: [oracle_br] Função converter coluna x linha
> >>
> >>
> >>Srs.
> >> 
> >>Existe alguma funcão sql no oracle, para transformar linha x
> >>
> >>
> >coluna.
> >  
> >
> >>Por exemplo meu select trás da seguinte forma:
> >> 
> >>L 01 1068031,62 1308795,08
> >>L 02   937927,81 1149311,67
> >>L 03852139,6  1046022,15
> >>L 04  791363,86  976526,37
> >>L 05  8046,43  16027,23
> >>L 06  2326,69  6162,06
> >>L 07   1726,7   4668,95
> >> 
> >> Queria mostrar assim:
> >> 
> >>L 01 02 03 04 05 06 07 e os valores abaixo de cada um deles.
> >> 
> >>Att.
> >> 
> >>Rodrigo Cavalcante
> >>Aprendiz-Oracle
> >>  
> >>
> >>
> >>[As partes desta mensagem que não continham texto foram removidas]
> >>
> >>
> >>
> >>
> >>
> > 
> >
> >
> >
> >[As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> >--
> >Atenção! As mensagens deste grupo são de acesso público e de inteira 
> >responsabilidade de seus remetentes.
> >Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> >--__
> >
> >Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
> >__
> >O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
> >link do mesmo para evitar trafego(pedidos) desnecessário. 
> >Links do Yahoo! Grupos
> >
> >
> >
> >
> > 
> >
> >
> >
> >  
> >
> 
> 


--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Função converter coluna x linha

2006-08-02 Por tôpico Thiago Menon
Só uma dúvida isso funciona apartir de qual versão do Oracle ?

Thiago

Rodrigo Cavalcante escreveu:

>Olá Márcia, valeu pela dica, fiz de uma maneira com vários subselect e
>funcionou.
> 
>Agradeço pela atenção.
> 
>Att.
> 
>Aprendiz-Oracle
>
>- Original Message - 
>From: Marcia Bussolaro <mailto:[EMAIL PROTECTED]>  
>To: oracle_br@yahoogrupos.com.br <mailto:oracle_br@yahoogrupos.com.br>  
>Sent: Tuesday, August 01, 2006 10:00 AM
>Subject: Re: [oracle_br] Função converter coluna x linha
>
>Oi,
>
>  Não testei, mas deve ser mais ou menos assim:
>
>select 
>  L01,
>  L02,
>  L03
>from (
>  select
>(case when coluna='01' then valor else null end) L01,
>(case when coluna='02' then valor else null end) L02,
>(case when coluna='03' then valor else null end) L03
>  from
>tabela);
>
>[]
>Marcia
>
>
>
>
>On Tue, 1 Aug 2006 09:31:32 -0300, Rodrigo Cavalcante
><[EMAIL PROTECTED]> escreveu:
>
>  
>
>>De: Rodrigo Cavalcante <[EMAIL PROTECTED]>
>>Data: Tue, 1 Aug 2006 09:31:32 -0300
>>Para: oracle_br@yahoogrupos.com.br
>>Assunto: [oracle_br] Função converter coluna x linha
>>
>>
>>Srs.
>> 
>>Existe alguma funcão sql no oracle, para transformar linha x
>>
>>
>coluna.
>  
>
>>Por exemplo meu select trás da seguinte forma:
>> 
>>L 01 1068031,62 1308795,08
>>L 02   937927,81 1149311,67
>>L 03852139,6  1046022,15
>>L 04  791363,86  976526,37
>>L 05  8046,43  16027,23
>>L 06  2326,69  6162,06
>>L 07   1726,7   4668,95
>> 
>> Queria mostrar assim:
>> 
>>L 01 02 03 04 05 06 07 e os valores abaixo de cada um deles.
>> 
>>Att.
>> 
>>Rodrigo Cavalcante
>>Aprendiz-Oracle
>>  
>>
>>
>>[As partes desta mensagem que não continham texto foram removidas]
>>
>>
>>
>>
>>
> 
>
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>
>
>
>--
>Atenção! As mensagens deste grupo são de acesso público e de inteira 
>responsabilidade de seus remetentes.
>Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
>--__
>
>Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
>__
>O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
>link do mesmo para evitar trafego(pedidos) desnecessário. 
>Links do Yahoo! Grupos
>
>
>
>
> 
>
>
>
>  
>


--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função converter coluna x linha

2006-08-01 Por tôpico Rodrigo Cavalcante
Olá Márcia, valeu pela dica, fiz de uma maneira com vários subselect e
funcionou.
 
Agradeço pela atenção.
 
Att.
 
Aprendiz-Oracle

- Original Message - 
From: Marcia Bussolaro <mailto:[EMAIL PROTECTED]>  
To: oracle_br@yahoogrupos.com.br <mailto:oracle_br@yahoogrupos.com.br>  
Sent: Tuesday, August 01, 2006 10:00 AM
Subject: Re: [oracle_br] Função converter coluna x linha

Oi,

  Não testei, mas deve ser mais ou menos assim:

select 
  L01,
  L02,
  L03
from (
  select
(case when coluna='01' then valor else null end) L01,
(case when coluna='02' then valor else null end) L02,
(case when coluna='03' then valor else null end) L03
  from
tabela);

[]
Marcia




On Tue, 1 Aug 2006 09:31:32 -0300, Rodrigo Cavalcante
<[EMAIL PROTECTED]> escreveu:

> De: Rodrigo Cavalcante <[EMAIL PROTECTED]>
> Data: Tue, 1 Aug 2006 09:31:32 -0300
> Para: oracle_br@yahoogrupos.com.br
> Assunto: [oracle_br] Função converter coluna x linha
> 
> 
> Srs.
>  
> Existe alguma funcão sql no oracle, para transformar linha x
coluna.
> Por exemplo meu select trás da seguinte forma:
>  
> L 01 1068031,62 1308795,08
> L 02   937927,81 1149311,67
> L 03852139,6  1046022,15
> L 04  791363,86  976526,37
> L 05  8046,43  16027,23
> L 06  2326,69  6162,06
> L 07   1726,7   4668,95
>  
>  Queria mostrar assim:
>  
> L 01 02 03 04 05 06 07 e os valores abaixo de cada um deles.
>  
> Att.
>  
> Rodrigo Cavalcante
> Aprendiz-Oracle
>   
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
> 
> 
 



[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função converter coluna x linha

2006-08-01 Por tôpico Marcia Bussolaro
Oi,

  Não testei, mas deve ser mais ou menos assim:

select 
  L01,
  L02,
  L03
from (
  select
(case when coluna='01' then valor else null end) L01,
(case when coluna='02' then valor else null end) L02,
(case when coluna='03' then valor else null end) L03
  from
tabela);

[]
Marcia




On Tue, 1 Aug 2006 09:31:32 -0300, Rodrigo Cavalcante <[EMAIL PROTECTED]> 
escreveu:

> De: Rodrigo Cavalcante <[EMAIL PROTECTED]>
> Data: Tue, 1 Aug 2006 09:31:32 -0300
> Para: oracle_br@yahoogrupos.com.br
> Assunto: [oracle_br] Função converter coluna x linha
> 
> 
> Srs.
>  
> Existe alguma funcão sql no oracle, para transformar linha x coluna.
> Por exemplo meu select trás da seguinte forma:
>  
> L 01 1068031,62 1308795,08
> L 02   937927,81 1149311,67
> L 03852139,6  1046022,15
> L 04  791363,86  976526,37
> L 05  8046,43  16027,23
> L 06  2326,69  6162,06
> L 07   1726,7   4668,95
>  
>  Queria mostrar assim:
>  
> L 01 02 03 04 05 06 07 e os valores abaixo de cada um deles.
>  
> Att.
>  
> Rodrigo Cavalcante
> Aprendiz-Oracle
>   
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
> 
> 


--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] função de desvio padrão

2006-06-19 Por tôpico Oscar Nogueira Neto
Boas,

dependendo de sua necessidade, o próprio Oracle oferece, eu seu conjunto de
funções analíticas e agregadas, uma função de Desvio Padrão.

Procure na documentação do tahiti pela função STDDEV.

http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96540/functions116a.htm

Att,

2006/6/19, Tathyanna Pelegrinni <[EMAIL PROTECTED]>:
>
> Alguém sabe momo implementar a função de desvio padrão em pl/sql?
>
> Obrigada.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>



-- 
Oscar Nogueira Neto
[EMAIL PROTECTED]


[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] função que retorna o dia da semana

2006-03-20 Por tôpico Odair Maurício Machado
Valeu a dica mano.
  Obrigado

Márcio de Figueiredo Moura e Castro <[EMAIL PROTECTED]> escreveu:
  Cara, não existe uma função específica, mas um parâmetro da TO_CHAR:

select to_char(sysdate, 'WW') from dual

Espero ter ajudado.

Márcio de Figueiredo Moura e Castro



[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 


Yahoo! Grupos, um serviço oferecido por:PUBLICIDADE
var lrec_target="_blank";var lrec_URL=new Array();  
lrec_URL[1]="http://br.ard.yahoo.com/SIG=12f762696/M=396553.7942726.8983427.2369893/D=brclubs/S=2137114689:HM/Y=BR/EXP=1142860747/A=3378475/R=0/id=flashurl/SIG=154eokgva/*http://lt.dell.com/lt/lt.aspx?CID=11648&LID=321747&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs";;
  var 
lrec_flashfile="http://br.i1.yimg.com/br.yimg.com/i/br/ads7/200306_y300x250_mar07_dhs_dim5150.swf?clickTAG=javascript:LRECopenWindow(1)";
  var 
lrec_altURL="http://br.ard.yahoo.com/SIG=12f762696/M=396553.7942726.8983427.2369893/D=brclubs/S=2137114689:HM/Y=BR/EXP=1142860747/A=3378475/R=1/id=altimg/SIG=154eokgva/*http://lt.dell.com/lt/lt.aspx?CID=11648&LID=321747&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs";;
  var 
lrec_altimg="http://br.i1.yimg.com/br.yimg.com/i/br/ads7/200306_y300x250_mar07_dhs_dim5150.gif";;
  var
 lrec_width=300;var lrec_height=250;  
  
-
  Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

   O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 





Odair Maurício Machado.


-
 Yahoo! Acesso Grátis 
Internet rápida e grátis. Instale o discador agora!

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 






Re: [oracle_br] função que retorna o dia da semana

2006-03-20 Por tôpico Odair Maurício Machado
Valeu a dica mano.
  Obrigado

Márcio de Figueiredo Moura e Castro <[EMAIL PROTECTED]> escreveu:
  Cara, não existe uma função específica, mas um parâmetro da TO_CHAR:

select to_char(sysdate, 'WW') from dual

Espero ter ajudado.

Márcio de Figueiredo Moura e Castro



[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 


Yahoo! Grupos, um serviço oferecido por:PUBLICIDADE
var lrec_target="_blank";var lrec_URL=new Array();  
lrec_URL[1]="http://br.ard.yahoo.com/SIG=12f762696/M=396553.7942726.8983427.2369893/D=brclubs/S=2137114689:HM/Y=BR/EXP=1142860747/A=3378475/R=0/id=flashurl/SIG=154eokgva/*http://lt.dell.com/lt/lt.aspx?CID=11648&LID=321747&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs";;
  var 
lrec_flashfile="http://br.i1.yimg.com/br.yimg.com/i/br/ads7/200306_y300x250_mar07_dhs_dim5150.swf?clickTAG=javascript:LRECopenWindow(1)";
  var 
lrec_altURL="http://br.ard.yahoo.com/SIG=12f762696/M=396553.7942726.8983427.2369893/D=brclubs/S=2137114689:HM/Y=BR/EXP=1142860747/A=3378475/R=1/id=altimg/SIG=154eokgva/*http://lt.dell.com/lt/lt.aspx?CID=11648&LID=321747&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs";;
  var 
lrec_altimg="http://br.i1.yimg.com/br.yimg.com/i/br/ads7/200306_y300x250_mar07_dhs_dim5150.gif";;
  var
 lrec_width=300;var lrec_height=250;  
  
-
  Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

   O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 





Odair Maurício Machado.


-
 Yahoo! Search
 Dê uma espiadinha e saiba tudo sobre o Big Brother Brasil.

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 







Re: [oracle_br] Função para comparar da tas

2005-11-26 Por tôpico Marcio
Quando subtrair uma data de outra, o resultado sera dado em dias (inteiros)
e horas/minuto/segundo (fracao). Exemplo:

[EMAIL PROTECTED]> with dt
   2  as
   3  ( select sysdate - trunc(sysdate - 2) x
   4  from dual )
   5  select trunc(x) dias,
   6 to_char(trunc(sysdate) + mod(x,1), 'hh:mi:ss') horas
   7from dt
   8  /

  DIAS HORAS
- 
 2 07:52:00

1 row selected.


Julio Cesar Leandro wrote:
> Pessoal existe alguma função no Oracle que compara duas datas e retorna a
> quantidade de dias entre as mesmas.
> 
> Em SQL SERVER a função se chama : DATEDIFF
> 
> 
> Grato,
> Julio
> 
> 
> --
> Atenção! As mensagens deste grupo são de acesso público e de inteira 
> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> --_
> Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423  
> Links do Yahoo! Grupos
> 
> 
> 
> 
>  
> 
> 
> 



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--_
Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] função recursiva

2005-11-22 Por tôpico Rafael
não, pq assim retornaria uma variavel com os valores concatenados, e
eu preciso cada resultado em uma linha diferente


Em 22/11/05, Roberto Oshikawa<[EMAIL PROTECTED]> escreveu:
> Rafael,
>  Vc já tentou usar dentro de um "FOR" ??
>  FOR 1..n
> loop
>  variavel := variaval || fn_Recursiva();
>  end loop;
>
>  Em 22/11/05, Rafael <[EMAIL PROTECTED]> escreveu:
> >
> > Olá,
> >
> > alguém poderia me enviar um exemplo de um função recursiva que retorne
> > várias tuplas?
> >
> > explicando melhor, a cada chamada da função, ela deve retornar 1
> > valor, então chama-lá recursivamente até um valor n, tendo no final n
> > linhas retornadas.
> >
> > Grato,
> >
> > -- Rafael
> >
> >
> >
> > --
> > Atenção! As mensagens deste grupo são de acesso público e de inteira
> > responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> >
> > --_
> > Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423
> >
> >
> >   *Yahoo! Grupos, um serviço oferecido por:*   PUBLICIDADE
> >
> > 
> > --
> > *Links do Yahoo! Grupos*
> >
> >- Para visitar o site do seu grupo na web, acesse:
> >http://br.groups.yahoo.com/group/oracle_br/
> >- Para sair deste grupo, envie um e-mail para:
> >[EMAIL PROTECTED]<[EMAIL PROTECTED]>
> >- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
> >Serviço do Yahoo! .
> >
> >
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> --
> Atenção! As mensagens deste grupo são de acesso público e de inteira 
> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --_
> Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--_
Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] função recursiva

2005-11-22 Por tôpico Roberto Oshikawa
Rafael,
 Vc já tentou usar dentro de um "FOR" ??
 FOR 1..n
loop
 variavel := variaval || fn_Recursiva();
 end loop;

 Em 22/11/05, Rafael <[EMAIL PROTECTED]> escreveu:
>
> Olá,
>
> alguém poderia me enviar um exemplo de um função recursiva que retorne
> várias tuplas?
>
> explicando melhor, a cada chamada da função, ela deve retornar 1
> valor, então chama-lá recursivamente até um valor n, tendo no final n
> linhas retornadas.
>
> Grato,
>
> -- Rafael
>
>
>
> --
> Atenção! As mensagens deste grupo são de acesso público e de inteira
> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
>
> --_
> Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423
>
>
>   *Yahoo! Grupos, um serviço oferecido por:*   PUBLICIDADE
>
> 
> --
> *Links do Yahoo! Grupos*
>
>- Para visitar o site do seu grupo na web, acesse:
>http://br.groups.yahoo.com/group/oracle_br/
>- Para sair deste grupo, envie um e-mail para:
>[EMAIL PROTECTED]<[EMAIL PROTECTED]>
>- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>Serviço do Yahoo! .
>
>


[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--_
Area de download do grupo - http://www.4shared.com/dir/101727/a4dcc423  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função para remover acentu ações

2005-10-26 Por tôpico Anderson Goulart
Nossa até que fim esta fazendo alguma coisa Rodolfo! rs..
 
Abraços

Rodolfo Nunez <[EMAIL PROTECTED]> escreveu:
O oracle ja possui uma função translate,

select translate('TESTE','TS','AC') from dual;

Att,
Rodolfo

On 10/26/05, Carlos Geiser <[EMAIL PROTECTED]> wrote:
>
> Olá pessoal,
>
> alguém sabe se tem como criar uma função no Oracle para remover as
> acentuações, para que na hora a consulta seja ignorada as acentuações ?
>
> Exemplo:
>
> select * from vista_arquivo_pai where tiraacentos(nome_pessoa)
> like(tiraacentos('JOSÉ%'))
>
> tiraacentos seria nome da Função
>
> No banco de dados PostgreSQL eu consegui criar essa função através desse
> FUNCTION:
> CREATE FUNCTION tiraacentos(text) RETURNS text AS '
>
> SELECT translate( $1,
>
> text ''ÁÉÍÓÚáéíóúÀÈÌÒÙàèìòùÂÊÎÔÛâêîôûÄËÏÖÜäëïöüÃÕãõÇçÑñºª'',
>
> text ''AEIOUaeiouAEIOUaeiouAEIOUaeiouAEIOUaeiouAOaoCcNnoa'')
>
> ' LANGUAGE SQL STRICT;
>
> É possível criar essa função no Oracle ?
>
>
>
> Grato,
>
> Carlos Geiser
>
>
>
>
>
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ORACLE_BR APOIA 2ºENPO-BR
> _
> O 2º Encontro Nacional de Profissionais Oracle será realizado no dia
> 05/11/2005 no auditório da FIAP em São Paulo. Serão apresentadas Palestras e
> Cases dirigidos exclusivamente por profissionais especialistas e renomados
> no mercado. Confira a programação no site do evento!
> http://www.enpo-br.org/
> _
> Area de download oracle_br - http://www.4shared.com/dir/101727/a4dcc423
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
Area de download oracle_br - http://www.4shared.com/dir/101727/a4dcc423 


Yahoo! Grupos, um serviço oferecido por: 

-
Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/
  
   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
  
   O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 



-
 Promoção Yahoo! Acesso Grátis: a cada hora navegada você
acumula cupons e concorre a mais de 500 prêmios! Participe!

[As partes desta mensagem que não continham texto foram removidas]



ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
Area de download oracle_br - http://www.4shared.com/dir/101727/a4dcc423  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função para remover acentuações

2005-10-26 Por tôpico Rodolfo Nunez
O oracle ja possui uma função translate,

select translate('TESTE','TS','AC') from dual;

Att,
Rodolfo

On 10/26/05, Carlos Geiser <[EMAIL PROTECTED]> wrote:
>
> Olá pessoal,
>
> alguém sabe se tem como criar uma função no Oracle para remover as
> acentuações, para que na hora a consulta seja ignorada as acentuações ?
>
> Exemplo:
>
> select * from vista_arquivo_pai where tiraacentos(nome_pessoa)
> like(tiraacentos('JOSÉ%'))
>
> tiraacentos seria nome da Função
>
> No banco de dados PostgreSQL eu consegui criar essa função através desse
> FUNCTION:
> CREATE FUNCTION tiraacentos(text) RETURNS text AS '
>
> SELECT translate( $1,
>
> text ''ÁÉÍÓÚáéíóúÀÈÌÒÙàèìòùÂÊÎÔÛâêîôûÄËÏÖÜäëïöüÃÕãõÇçÑñºª'',
>
> text ''AEIOUaeiouAEIOUaeiouAEIOUaeiouAEIOUaeiouAOaoCcNnoa'')
>
> ' LANGUAGE SQL STRICT;
>
> É possível criar essa função no Oracle ?
>
>
>
> Grato,
>
> Carlos Geiser
>
>
>
>
>
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ORACLE_BR APOIA 2ºENPO-BR
> _
> O 2º Encontro Nacional de Profissionais Oracle será realizado no dia
> 05/11/2005 no auditório da FIAP em São Paulo. Serão apresentadas Palestras e
> Cases dirigidos exclusivamente por profissionais especialistas e renomados
> no mercado. Confira a programação no site do evento!
> http://www.enpo-br.org/
> _
> Area de download oracle_br - http://www.4shared.com/dir/101727/a4dcc423
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
Area de download oracle_br - http://www.4shared.com/dir/101727/a4dcc423  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função para mostrar dia da semana

2005-10-18 Por tôpico Alessandro Pires de Camargo
*

select* to_char(*sysdate*,'day') *from* dual;
[]'s

On 10/13/05, a_ontalba <[EMAIL PROTECTED]> wrote:
>
> Alguém do grupo tem alguma função ou sabe onde eu consigo, uma função
> para me trazer qual é o dia da semana utilizando sysdate.
>
>
> Fico no aguardo
> Atenciosamente
> André Luiz Dutra Ontalba
>
>
>
>
> ORACLE_BR APOIA 2ºENPO-BR
> _
> O 2º Encontro Nacional de Profissionais Oracle será realizado no dia
> 05/11/2005 no auditório da FIAP em São Paulo. Serão apresentadas Palestras e
> Cases dirigidos exclusivamente por profissionais especialistas e renomados
> no mercado. Confira a programação no site do evento!
> http://www.enpo-br.org/
> _
>
>
>
>   *Yahoo! Grupos, um serviço oferecido por:*
> --
> *Links do Yahoo! Grupos*
>
>- Para visitar o site do seu grupo na web, acesse:
>http://br.groups.yahoo.com/group/oracle_br/
>- Para sair deste grupo, envie um e-mail para:
>[EMAIL PROTECTED]<[EMAIL PROTECTED]>
>- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>Serviço do Yahoo! .
>
>


[As partes desta mensagem que não continham texto foram removidas]





ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 






RE: [oracle_br] Função para mostrar dia da sem ana

2005-10-13 Por tôpico Alfonso, Carlos Eduardo
Ola Andre

Tente isso:

Select To_Char(Sysdate,'day')Hoje 
>From Dual

ou

Select To_Char(Sysdate,'day','nls_date_language =Portuguese')Hoje 
>From Dual

[]'s

-Original Message-
From: oracle_br@yahoogrupos.com.br
[mailto:[EMAIL PROTECTED] Behalf Of a_ontalba
Sent: quinta-feira, 13 de outubro de 2005 15:14
To: oracle_br@yahoogrupos.com.br
Subject: [oracle_br] Função para mostrar dia da semana


Alguém do grupo tem alguma função ou sabe onde eu consigo, uma função 
para me trazer qual é o dia da semana utilizando sysdate. 


Fico no aguardo 
Atenciosamente
André Luiz Dutra Ontalba




ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
 
Links do Yahoo! Grupos




 






ORACLE_BR APOIA 2ºENPO-BR 
_
O 2º Encontro Nacional de Profissionais Oracle será realizado no dia 05/11/2005 
no auditório da FIAP em São Paulo. Serão apresentadas Palestras e Cases 
dirigidos exclusivamente por profissionais especialistas e renomados no 
mercado. Confira a programação no site do evento! http://www.enpo-br.org/
_
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 






Re: [oracle_br] Função DECODE

2005-07-27 Por tôpico José Resende Neto
Thaigo (deve ser Thiago, mas tudo bem...),

vc pode trocar pela função REPLACE, que não precisa ser dentro de um SELECT.
Por exemplo:

Para usar a função DECODE, deveria ser assim:

declare
v_teste  varchar2(10) := 'AaBbCc';
begin
select decode(v_teste,'AaBbCc','DdEeFf') into v_teste from dual;
dbms_output.put_line(v_teste);
end;

Com a função REPLACE, pode ser assim (sem SELECT):

declare
 v_teste  varchar2(10) := 'AaBbCc';
begin
 v_teste := replace(v_teste,'AaBbCc','DdEeFf');
 dbms_output.put_line(v_teste);
end;

Espero ter ajudado.
//Neto

- Original Message - 
From: "thy_costa" <[EMAIL PROTECTED]>
To: 
Sent: Wednesday, July 27, 2005 5:16 PM
Subject: [oracle_br] Função DECODE


É possível usar a função decode sem ser através de um SELECT?

Ou existe alguma outra função semelhante que possa ser usada
diretamente no pl/sql (sem o SELECT) ?

Obrigado.
Thaigo.




__

Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Falar com os Moderadores:([EMAIL PROTECTED])
Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar
__
Links do Yahoo! Grupos










__

Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Falar com os Moderadores:([EMAIL PROTECTED])
Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar 
__ 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função DECODE

2005-07-27 Por tôpico José Resende Neto
Dê um exemplo do que vc precisa.


- Original Message - 
From: "thy_costa" <[EMAIL PROTECTED]>
To: 
Sent: Wednesday, July 27, 2005 5:16 PM
Subject: [oracle_br] Função DECODE


É possível usar a função decode sem ser através de um SELECT?

Ou existe alguma outra função semelhante que possa ser usada
diretamente no pl/sql (sem o SELECT) ?

Obrigado.
Thaigo.




__

Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Falar com os Moderadores:([EMAIL PROTECTED])
Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar
__
Links do Yahoo! Grupos










__

Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Falar com os Moderadores:([EMAIL PROTECTED])
Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar 
__ 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] função MIN/MAX em uma clausula W HERE

2005-07-04 Por tôpico Rinaldo Guimarães

Where Campo = (select Max(Campo) From)

Fique de olho na performance !!


- Original Message - 
From: "rjpzav" <[EMAIL PROTECTED]>
To: 
Sent: Monday, July 04, 2005 2:08 PM
Subject: [oracle_br] função MIN/MAX em uma clausula WHERE


Boa Tarde a todos.

Gostaria de saber como posso incluir uma função MAX em uma cláusula
WHERE.
Por exemplo:

Gostaria de obter o campo 'custo' de uma tabela x, onde o campo 'mês'
e 'ano' sejam os maiores existentes no meu banco de dados.

Grato,
Ricardo.






__

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED]
Fernanda Damous [EMAIL PROTECTED]
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/
__

Sair da Lista...: [EMAIL PROTECTED]
Links do Yahoo! Grupos











__

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__

Sair da Lista...: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] função MIN/MAX em uma clausula WHERE

2005-07-04 Por tôpico Marcelo Almeida
Fale Ricardo, tudo bem? 

diretamente acredito que não .. 
o que uso na versão 8i é 

select * from tabela a where campo = (select max(coluna) from tabela b
where a.codigo = b.codigo) ..

sds,
Marcelo Nunes.

On 7/4/05, rjpzav <[EMAIL PROTECTED]> wrote:
> Boa Tarde a todos.
> 
> Gostaria de saber como posso incluir uma função MAX em uma cláusula 
> WHERE.
> Por exemplo:
> 
> Gostaria de obter o campo 'custo' de uma tabela x, onde o campo 'mês' 
> e 'ano' sejam os maiores existentes no meu banco de dados.
> 
> Grato, 
> Ricardo.
> 
>   
> 
> 
> 
> 
> __
> 
> Cancelar assinatura...:
> [EMAIL PROTECTED]
> Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
> Fernanda Damous [EMAIL PROTECTED] 
> Alisson Aguiar [EMAIL PROTECTED]
> __
> http://br.groups.yahoo.com/group/oracle_br/ 
> __
> 
> Sair da Lista...: [EMAIL PROTECTED] 
> 
> 
> 
> Links do Yahoo! Grupos
> 
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/oracle_br/
>   
> Para sair deste grupo, envie um e-mail para:
> [EMAIL PROTECTED]
>   
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.


__

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__

Sair da Lista...: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Função UTL_SMTP

2005-06-28 Por tôpico Renan da Silveira Medeiros
Meu caro eu tbm tive este problema.
Abaixo o codigo de uma procedure de envio de email

CREATE OR REPLACE PROCEDURE SV1PMAIL

  
 ( P_MAILHOST   IN VARCHAR2,


   P_SENDER IN VARCHAR2,


   P_RECIPIENT  IN VARCHAR2,


   P_CC IN VARCHAR2,


   P_SUBJECTIN VARCHAR2,


   P_MENSAG IN VARCHAR2 )   





 IS 





MENSAGEM  VARCHAR2(3) := P_MENSAG;  


MENSAGEM2 VARCHAR2(3) := NULL;  





MAIL_CONN UTL_SMTP.CONNECTION;  





CRLF  VARCHAR2(0002) := CHR(13) || CHR(10); 


MESG  VARCHAR2(4000) := NULL;   


DESTINO   VARCHAR2(0200) := NULL;   


DESTINO2  VARCHAR2(0200) := NULL;   


TAMANHO   BINARY_INTEGER := 1;  





POSINIBINARY_INTEGER := 1;  


POSFIMBINARY_INTEGER := 1;  


POSENDBINARY_INTEGER := 1;