Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Mario Rodrigues marioirodrig...@gmail.com [oracle_br]
Rosivaldo,

Sim é WEB, porem não funcionou o  .. é uma aplicação que gera uns
dados retornados do banco em imagem QCODE .. por algum motivo o QCODE esta
gerando com o codigo html tb .. mas no php fiz umas modificações e consegui
resolver.

Chiappa,

Pois é, um amigo me falou que seria melhor fazer no codigo, porem como sou
teimoso ainda fui ver como fazia no SQL, mas serviu pra dar uma estudada em
como pegar uma string e quebrar em linhas usando o regexp_substr .. serviu
pra alguma coisa rsrsrs

Obrigado a todos.



Em 14 de julho de 2016 11:24, Rosivaldo Ramalho rosiva...@gmail.com
[oracle_br]  escreveu:

>
>
> Mario,
>
> Só uma pergunta, o sistema é web? Se for coloca um replace com '' no
> meio. Se for máquinas windows, tem que ser como o Chiappa falou, você usa o
> CHR(10) || CHR(13):
> select id, texto || CHR(10) || CHR(13) || texto2 texto from teste
> OU
> select id, REPLACE(texto, '|', CHR(10) || CHR(13)) texto from teste;
>
> Atenciosamente
> --
> Rosivaldo Ramalho 
> Diretor na RLXE - http://www.rlxe.com.br
> 
>
> OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
> OCP OAS 10g | OCE WLS 10g
>
> http://about.me/rosivaldo
>
> 2016-07-14 11:03 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
> [oracle_br] :
>
>>
>>
>> Pois Chiappa, quando terminei de escrever dei uma lida, nao entendi muito
>> bem rsrsrs
>>
>> Sobre a sua explicação, entendi quando eu tiver um pouco mais de tempo
>> vou dar uma olhada com certeza nisso, pq vou precisar mais la na frente!
>>
>> Obrigado a todos.
>>
>>
>> Em 14 de julho de 2016 10:57, jlchia...@yahoo.com.br [oracle_br] <
>> oracle_br@yahoogrupos.com.br> escreveu:
>>
>>>
>>>
>>> Colega, se até vc achou confusa a sua "explicação" imagina a gente :)
>>> Mas de modo geral, é o que o colega falou  : em todo SO há o indicador  de
>>> quebra de linha (no LInux/Unix é um só caracter, LF com código 10 na tabela
>>> ASCII,E no Windows é uma sequência de dois caracteres, CR e LF, em ASCII
>>> decimal 13 e 10 ) -  SE no seu SELECT vc quer inserir uma quebra de linha
>>> no meio dos dois campos vc usa um REPLACE trocando um caracter extra pelo
>>> indicador de quebra de linha, E SE vc quiser inserir uma quebra de linha no
>>> final vc Concatena o indicador de quebra no final após a string, é isso...
>>> LOGICAMENTE, há sempre a opção de usar a formatação que a sua tool/ambiente
>>> de programação te dá : por exemplo, no sqlplus vc pode usar o comando
>>> COLUMN formatando com NEW_LINE, FOLD AFTER ou FOLD BEFORE
>>>
>>>  []s
>>>
>>>Chiappa
>>>
>>
>>
>>
>>
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Rosivaldo Ramalho rosiva...@gmail.com [oracle_br]
Mario,

Só uma pergunta, o sistema é web? Se for coloca um replace com '' no
meio. Se for máquinas windows, tem que ser como o Chiappa falou, você usa o
CHR(10) || CHR(13):
select id, texto || CHR(10) || CHR(13) || texto2 texto from teste
OU
select id, REPLACE(texto, '|', CHR(10) || CHR(13)) texto from teste;

Atenciosamente
--
Rosivaldo Ramalho 
Diretor na RLXE - http://www.rlxe.com.br


OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
OCP OAS 10g | OCE WLS 10g

http://about.me/rosivaldo

2016-07-14 11:03 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
[oracle_br] :

>
>
> Pois Chiappa, quando terminei de escrever dei uma lida, nao entendi muito
> bem rsrsrs
>
> Sobre a sua explicação, entendi quando eu tiver um pouco mais de tempo vou
> dar uma olhada com certeza nisso, pq vou precisar mais la na frente!
>
> Obrigado a todos.
>
>
> Em 14 de julho de 2016 10:57, jlchia...@yahoo.com.br [oracle_br] <
> oracle_br@yahoogrupos.com.br> escreveu:
>
>>
>>
>> Colega, se até vc achou confusa a sua "explicação" imagina a gente :) Mas
>> de modo geral, é o que o colega falou  : em todo SO há o indicador  de
>> quebra de linha (no LInux/Unix é um só caracter, LF com código 10 na tabela
>> ASCII,E no Windows é uma sequência de dois caracteres, CR e LF, em ASCII
>> decimal 13 e 10 ) -  SE no seu SELECT vc quer inserir uma quebra de linha
>> no meio dos dois campos vc usa um REPLACE trocando um caracter extra pelo
>> indicador de quebra de linha, E SE vc quiser inserir uma quebra de linha no
>> final vc Concatena o indicador de quebra no final após a string, é isso...
>> LOGICAMENTE, há sempre a opção de usar a formatação que a sua tool/ambiente
>> de programação te dá : por exemplo, no sqlplus vc pode usar o comando
>> COLUMN formatando com NEW_LINE, FOLD AFTER ou FOLD BEFORE
>>
>>  []s
>>
>>Chiappa
>>
>
>
>
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Ok, mas deixe-me só colocar um ponto : vc perguntou como fazer em SQL e 
respondemos o que vc perguntou, mas ** via de regra ** não é Seguro vc formatar 
dados via SQL, pois o programa-cliente/linguagem/tool de programação que enviou 
o SQL e vai receber os dados é ** Totalmente Livre ** para os formatar como Bem 
Quiser, até mesmo Ignorando determinados caracteres de controle, dependendo do 
SO e de como o programa/tool foi escrito, e em qual liguagem... Então, se vc 
tem a opção de fazer no seu código, em tese isso é mais seguro...

 []s

   Chiappa

Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Mario Rodrigues marioirodrig...@gmail.com [oracle_br]
Pois Chiappa, quando terminei de escrever dei uma lida, nao entendi muito
bem rsrsrs

Sobre a sua explicação, entendi quando eu tiver um pouco mais de tempo vou
dar uma olhada com certeza nisso, pq vou precisar mais la na frente!

Obrigado a todos.


Em 14 de julho de 2016 10:57, jlchia...@yahoo.com.br [oracle_br] <
oracle_br@yahoogrupos.com.br> escreveu:

>
>
> Colega, se até vc achou confusa a sua "explicação" imagina a gente :) Mas
> de modo geral, é o que o colega falou  : em todo SO há o indicador  de
> quebra de linha (no LInux/Unix é um só caracter, LF com código 10 na tabela
> ASCII,E no Windows é uma sequência de dois caracteres, CR e LF, em ASCII
> decimal 13 e 10 ) -  SE no seu SELECT vc quer inserir uma quebra de linha
> no meio dos dois campos vc usa um REPLACE trocando um caracter extra pelo
> indicador de quebra de linha, E SE vc quiser inserir uma quebra de linha no
> final vc Concatena o indicador de quebra no final após a string, é isso...
> LOGICAMENTE, há sempre a opção de usar a formatação que a sua tool/ambiente
> de programação te dá : por exemplo, no sqlplus vc pode usar o comando
> COLUMN formatando com NEW_LINE, FOLD AFTER ou FOLD BEFORE
>
>  []s
>
>Chiappa
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Colega, se até vc achou confusa a sua "explicação" imagina a gente :) Mas de 
modo geral, é o que o colega falou  : em todo SO há o indicador  de quebra de 
linha (no LInux/Unix é um só caracter, LF com código 10 na tabela ASCII,E no 
Windows é uma sequência de dois caracteres, CR e LF, em ASCII decimal 13 e 10 ) 
-  SE no seu SELECT vc quer inserir uma quebra de linha no meio dos dois campos 
vc usa um REPLACE trocando um caracter extra pelo indicador de quebra de linha, 
E SE vc quiser inserir uma quebra de linha no final vc Concatena o indicador de 
quebra no final após a string, é isso... LOGICAMENTE, há sempre a opção de usar 
a formatação que a sua tool/ambiente de programação te dá : por exemplo, no 
sqlplus vc pode usar o comando COLUMN formatando com NEW_LINE, FOLD AFTER ou 
FOLD BEFORE

 []s
 
   Chiappa

Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Mario Rodrigues marioirodrig...@gmail.com [oracle_br]
Rosivaldo,

Esta solução funfa no SQLPlus .. mas pra aplicação não funfou ,, mas
resolvi na propria aplicação Obrigado!

Em 14 de julho de 2016 10:27, Rosivaldo Ramalho rosiva...@gmail.com
[oracle_br]  escreveu:

>
>
> De fato não entendi direito a explicação! Rsrsrsrsrsrs
>
> Mas fiz juntando duas colunas da mesma tabela, seria isso? Olha aí:
> TESTE@orcl> delete from teste;
>
> 2 rows deleted.
>
> TESTE@orcl> commit;
>
> Commit complete.
> TESTE@orcl> alter table teste add texto2 varchar(20);
>
> Table altered.
> TESTE@orcl> insert into teste values(1, 'linha1', 'linha2');
>
> 1 row created.
>
> TESTE@orcl> insert into teste values(2, 'linha3', 'linha4');
>
> 1 row created.
>
> TESTE@orcl> commit;
>
> Commit complete.
> TESTE@orcl> select id, texto || CHR(10) || texto2 texto from teste;
>
> ID TEXTO
> -- 
> 1 linha1
>   linha2
>
> 2 linha3
>   linha4
>
>
> Atenciosamente
> --
> Rosivaldo Ramalho 
> Diretor na RLXE - http://www.rlxe.com.br
> 
>
> OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
> OCP OAS 10g | OCE WLS 10g
>
> http://about.me/rosivaldo
>
> 2016-07-14 10:15 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
> [oracle_br] :
>
>>
>>
>> Rosivaldo,
>>
>> Bom Dia
>>
>> Pois eh, havia visto uns exemplo e não tinha dado certo.
>> na verdade são colunas distintas que eu concatenei o que virou uma unica
>> coluna, dai usando regexp_substr consegui quebrar em linhas, porem ficam
>> em linhas diferente, eu queria que ficasse como se fosse um registro e não
>> varios como ficou usando o regexp_substr. Ate eu lendo aqui ficou
>> confuso rsrsrsrs
>>
>> Mas de qualquer maneira, fiz na aplicação mesmo .. pois acho q no banco
>> num vai ser muito viavel
>>
>> Obrigado.
>>
>> 2016-07-14 9:32 GMT-03:00 Rosivaldo Ramalho rosiva...@gmail.com
>> [oracle_br] :
>>
>>>
>>>
>>> Opa, tenta com o REPLACE:
>>> TESTE@orcl> select REPLACE('linha1|linha2', '|', CHR(10)) from dual
>>>
>>> REPLACE('LINHA1|LINHA2','|',CHR(10))
>>> ---
>>> linha1
>>> linha2
>>>
>>> Se for uma tabela também vai:
>>> TESTE@orcl> create table teste(id number(2), texto varchar2(40));
>>>
>>> Table created.
>>>
>>> TESTE@orcl> insert into teste values (1, 'linha1|linha2');
>>>
>>> 1 row created.
>>>
>>> TESTE@orcl> ed
>>> Wrote file afiedt.buf
>>>
>>>   1* insert into teste values (2, 'linha3|linha4')
>>> TESTE@orcl> /
>>>
>>> 1 row created.
>>>
>>> TESTE@orcl> select * from teste;
>>>
>>> ID TEXTO
>>> -- 
>>> 1 linha1|linha2
>>> 2 linha3|linha4
>>>
>>> TESTE@orcl> select id, REPLACE(texto, '|', CHR(10)) texto from teste;
>>>
>>> ID TEXTO
>>> -- 
>>> 1 linha1
>>>   linha2
>>>
>>> 2 linha3
>>>   linha4
>>>
>>>
>>> Atenciosamente
>>> --
>>> Rosivaldo Ramalho 
>>> Diretor na RLXE - http://www.rlxe.com.br
>>> 
>>>
>>> OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
>>> OCP OAS 10g | OCE WLS 10g
>>>
>>> http://about.me/rosivaldo
>>>
>>> 2016-07-14 9:06 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
>>> [oracle_br] :
>>>


 Pessoal,

 Bom Dia

 Existe alguma forma de eu quebrar um texto, mas sem gerar outra linha,
 pois com o  regexp_substr eu gero outra linha

 exemplo

 select campo1||campo2 from dual
 usando o regexp_substr
 1 campo1
 2 campo2

 gostaria de algo assim
 select campo1||campo2 from dual
 1 campo1
 campo2

 tem como??




>>>
>>
>>
>>
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Rosivaldo Ramalho rosiva...@gmail.com [oracle_br]
De fato não entendi direito a explicação! Rsrsrsrsrsrs

Mas fiz juntando duas colunas da mesma tabela, seria isso? Olha aí:
TESTE@orcl> delete from teste;

2 rows deleted.

TESTE@orcl> commit;

Commit complete.
TESTE@orcl> alter table teste add texto2 varchar(20);

Table altered.
TESTE@orcl> insert into teste values(1, 'linha1', 'linha2');

1 row created.

TESTE@orcl> insert into teste values(2, 'linha3', 'linha4');

1 row created.

TESTE@orcl> commit;

Commit complete.
TESTE@orcl> select id, texto || CHR(10) || texto2 texto from teste;

ID TEXTO
-- 
1 linha1
  linha2

2 linha3
  linha4


Atenciosamente
--
Rosivaldo Ramalho 
Diretor na RLXE - http://www.rlxe.com.br


OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
OCP OAS 10g | OCE WLS 10g

http://about.me/rosivaldo

2016-07-14 10:15 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
[oracle_br] :

>
>
> Rosivaldo,
>
> Bom Dia
>
> Pois eh, havia visto uns exemplo e não tinha dado certo.
> na verdade são colunas distintas que eu concatenei o que virou uma unica
> coluna, dai usando regexp_substr consegui quebrar em linhas, porem ficam
> em linhas diferente, eu queria que ficasse como se fosse um registro e não
> varios como ficou usando o regexp_substr. Ate eu lendo aqui ficou confuso
> rsrsrsrs
>
> Mas de qualquer maneira, fiz na aplicação mesmo .. pois acho q no banco
> num vai ser muito viavel
>
> Obrigado.
>
> 2016-07-14 9:32 GMT-03:00 Rosivaldo Ramalho rosiva...@gmail.com
> [oracle_br] :
>
>>
>>
>> Opa, tenta com o REPLACE:
>> TESTE@orcl> select REPLACE('linha1|linha2', '|', CHR(10)) from dual
>>
>> REPLACE('LINHA1|LINHA2','|',CHR(10))
>> ---
>> linha1
>> linha2
>>
>> Se for uma tabela também vai:
>> TESTE@orcl> create table teste(id number(2), texto varchar2(40));
>>
>> Table created.
>>
>> TESTE@orcl> insert into teste values (1, 'linha1|linha2');
>>
>> 1 row created.
>>
>> TESTE@orcl> ed
>> Wrote file afiedt.buf
>>
>>   1* insert into teste values (2, 'linha3|linha4')
>> TESTE@orcl> /
>>
>> 1 row created.
>>
>> TESTE@orcl> select * from teste;
>>
>> ID TEXTO
>> -- 
>> 1 linha1|linha2
>> 2 linha3|linha4
>>
>> TESTE@orcl> select id, REPLACE(texto, '|', CHR(10)) texto from teste;
>>
>> ID TEXTO
>> -- 
>> 1 linha1
>>   linha2
>>
>> 2 linha3
>>   linha4
>>
>>
>> Atenciosamente
>> --
>> Rosivaldo Ramalho 
>> Diretor na RLXE - http://www.rlxe.com.br
>> 
>>
>> OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
>> OCP OAS 10g | OCE WLS 10g
>>
>> http://about.me/rosivaldo
>>
>> 2016-07-14 9:06 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
>> [oracle_br] :
>>
>>>
>>>
>>> Pessoal,
>>>
>>> Bom Dia
>>>
>>> Existe alguma forma de eu quebrar um texto, mas sem gerar outra linha,
>>> pois com o  regexp_substr eu gero outra linha
>>>
>>> exemplo
>>>
>>> select campo1||campo2 from dual
>>> usando o regexp_substr
>>> 1 campo1
>>> 2 campo2
>>>
>>> gostaria de algo assim
>>> select campo1||campo2 from dual
>>> 1 campo1
>>> campo2
>>>
>>> tem como??
>>>
>>>
>>>
>>>
>>
>
>
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Mario Rodrigues marioirodrig...@gmail.com [oracle_br]
Rosivaldo,

Bom Dia

Pois eh, havia visto uns exemplo e não tinha dado certo.
na verdade são colunas distintas que eu concatenei o que virou uma unica
coluna, dai usando regexp_substr consegui quebrar em linhas, porem ficam em
linhas diferente, eu queria que ficasse como se fosse um registro e não
varios como ficou usando o regexp_substr. Ate eu lendo aqui ficou confuso
rsrsrsrs

Mas de qualquer maneira, fiz na aplicação mesmo .. pois acho q no banco num
vai ser muito viavel

Obrigado.

2016-07-14 9:32 GMT-03:00 Rosivaldo Ramalho rosiva...@gmail.com [oracle_br]
:

>
>
> Opa, tenta com o REPLACE:
> TESTE@orcl> select REPLACE('linha1|linha2', '|', CHR(10)) from dual
>
> REPLACE('LINHA1|LINHA2','|',CHR(10))
> ---
> linha1
> linha2
>
> Se for uma tabela também vai:
> TESTE@orcl> create table teste(id number(2), texto varchar2(40));
>
> Table created.
>
> TESTE@orcl> insert into teste values (1, 'linha1|linha2');
>
> 1 row created.
>
> TESTE@orcl> ed
> Wrote file afiedt.buf
>
>   1* insert into teste values (2, 'linha3|linha4')
> TESTE@orcl> /
>
> 1 row created.
>
> TESTE@orcl> select * from teste;
>
> ID TEXTO
> -- 
> 1 linha1|linha2
> 2 linha3|linha4
>
> TESTE@orcl> select id, REPLACE(texto, '|', CHR(10)) texto from teste;
>
> ID TEXTO
> -- 
> 1 linha1
>   linha2
>
> 2 linha3
>   linha4
>
>
> Atenciosamente
> --
> Rosivaldo Ramalho 
> Diretor na RLXE - http://www.rlxe.com.br
> 
>
> OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
> OCP OAS 10g | OCE WLS 10g
>
> http://about.me/rosivaldo
>
> 2016-07-14 9:06 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
> [oracle_br] :
>
>>
>>
>> Pessoal,
>>
>> Bom Dia
>>
>> Existe alguma forma de eu quebrar um texto, mas sem gerar outra linha,
>> pois com o  regexp_substr eu gero outra linha
>>
>> exemplo
>>
>> select campo1||campo2 from dual
>> usando o regexp_substr
>> 1 campo1
>> 2 campo2
>>
>> gostaria de algo assim
>> select campo1||campo2 from dual
>> 1 campo1
>> campo2
>>
>> tem como??
>>
>>
>>
>>
> 
>


Re: [oracle_br] Quebrar string

2016-07-14 Por tôpico Rosivaldo Ramalho rosiva...@gmail.com [oracle_br]
Opa, tenta com o REPLACE:
TESTE@orcl> select REPLACE('linha1|linha2', '|', CHR(10)) from dual

REPLACE('LINHA1|LINHA2','|',CHR(10))
---
linha1
linha2

Se for uma tabela também vai:
TESTE@orcl> create table teste(id number(2), texto varchar2(40));

Table created.

TESTE@orcl> insert into teste values (1, 'linha1|linha2');

1 row created.

TESTE@orcl> ed
Wrote file afiedt.buf

  1* insert into teste values (2, 'linha3|linha4')
TESTE@orcl> /

1 row created.

TESTE@orcl> select * from teste;

ID TEXTO
-- 
1 linha1|linha2
2 linha3|linha4

TESTE@orcl> select id, REPLACE(texto, '|', CHR(10)) texto from teste;

ID TEXTO
-- 
1 linha1
  linha2

2 linha3
  linha4


Atenciosamente
--
Rosivaldo Ramalho 
Diretor na RLXE - http://www.rlxe.com.br


OCP DB 10g | OCP DB 11g | OCE RAC 11g | OCE PT 11g
OCP OAS 10g | OCE WLS 10g

http://about.me/rosivaldo

2016-07-14 9:06 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com
[oracle_br] :

>
>
> Pessoal,
>
> Bom Dia
>
> Existe alguma forma de eu quebrar um texto, mas sem gerar outra linha,
> pois com o  regexp_substr eu gero outra linha
>
> exemplo
>
> select campo1||campo2 from dual
> usando o regexp_substr
> 1 campo1
> 2 campo2
>
> gostaria de algo assim
> select campo1||campo2 from dual
> 1 campo1
> campo2
>
> tem como??
>
>
>
> 
>


Re: [oracle_br] Quebrar string

2007-01-23 Por tôpico Rafael Milanez - BusinessOn
Milton ve se ajuda 

create table t (nome varchar(30));

insert into t values ('José Silva');
insert into t values ('João Carlos Oliveira');
insert into t values ('Um Dois Três da Silva Quatro');
insert into t values ('Joãozinho Pé-de-cana');


select nome,case when instr(nome,' ',1,3) != 0 then substr(nome,1,instr(nome,' 
',1,2)-1)
when instr(nome,' ',1,2) != 0 then substr(nome,1,instr(nome,' 
',1,2)-1)
   else substr(nome,1,instr(nome,' ')-1)
end Nome,
case when instr(nome,' ',1,3) != 0 then substr(nome,instr(nome,' 
',1,2)+1,length(nome)) 
 when instr(nome,' ',1,2) != 0 then substr(nome,instr(nome,' 
',1,2)+1,length(nome))
 else substr(nome,instr(nome,' ')+1,length(nome))
end sobrenome
from t


  - Original Message - 
  From: Smartn - Milton Bastos Henriquis Junior 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 1:56 PM
  Subject: [oracle_br] Quebrar string


  Olá pessoal,

  Tenho um cadastro de Nomes, os dados estão no seguinte

  Formato:

  NOME

  José Silva

  João Carlos Oliveira

  Um Dois Três da Silva Quatro

  Joãozinho Pé-de-cana

  Preciso jogar esses dados para outra tabela,

  Porém, em duas colunas, nome e sobrenome,

  no seguinte formato:

  - Se tiver 2 nomes, o primeiro para nome e o segundo para sobrenome...

  - Se tiver 3 nomes: o Primeiro e o segundo ficam para nome e o terceiro para 
sobrenome

  - Se tiver mais que 3: o Primeiro e o segundo para o nome e o resto para 
sobrenome

  Alguém tem algum select semelhante, pronto pra fazer

  algo assim?

  Milton Bastos Henriquis Junior

  Oracle Database Administrator
  Equipe de Tecnologia

  [EMAIL PROTECTED]
  Smartn ® IT Solutions
  Rua Candido de Abreu, 651 - 16º andar
  Centro Cívico - Curitiba
  CEP 80.530-907.

  Tel: ++ 55 41 3313-8613

  Fax: ++ 55 41 3313-8620

  www.smartn.com.br  

  __
  ADVERTENCIA: Esta mensagem (incluindo quaisquer anexos) e confidencial e de 
uso restrito. Se voce recebeu esta 
  mensagem por engano, por favor notifique ao emitente por meio do retorno do 
e-mail e delete (remova) esta 
  mensagem de seu sistema. Qualquer uso nao autorizado ou distribuicao desta 
mensagem em sua totalidade ou em parte 
  e estritamente proibido. Por favor, lembre-se de que e-mails sao susceptiveis 
a alteracoes. Smartn (incluindo 
  outras empresas participantes direta ou indiretamente) nao devem ser 
responsabilizados pelo uso improprio ou pela 
  transmissao incompleta da informacao contida neste comunicado, nem por nenhum 
atraso em seu recebimento ou dano ao 
  seu sistema. Smartn (incluindo outras empresas participantes direta ou 
indiretamente) nao garante que a integridade 
  deste comunicado foi mantida nem que este comunicado esta livre de virus, 
interceptacao ou interferencia. 

  DISCLAIMER: This message (including any attachments) is confidential and may 
be privileged. If you have received it 
  by mistake please notify the sender by return e-mail and delete this message 
from your system. Any unauthorized use 
  or dissemination of this message in whole or in part is strictly prohibited. 
Please note that e-mails are susceptible 
  to change. Smartn (including its group companies) shall not be liable for the 
improper or incomplete transmission of 
  the information contained in this communication nor for any delay in its 
receipt or damage to your system. Smartn 
  (or its group companies)does not guarantee that the integrity of this 
communication has been maintained nor that this 
  communication is free of viruses, interception or interference. 

  NEGACIÓN: Este mensaje (incluyendo cualquieres accesorios) es confidencial y 
puede ser privilegiado. Si usted lo ha
  recibido por error por favor notifique el remitente por el E-mail de vuelta y 
suprima este mensaje de su sistema. Cualquier 
  uso o difusión desautorizado de este mensaje en entero o en parte se prohíbe 
terminantemente. Observe por favor que 
  los E-mails son susceptibles al cambio. Smartn (incluyendo sus compañías del 
grupo) no será obligado para la transmisión 
  incorrecta o incompleta de la información contenida en esta comunicación ni 
para cualquier no retrasa en su recibo o daño 
  a su sistema. Smartn (o sus compañías del grupo) no garantiza que la 
integridad de esta comunicación se ha mantenido ni 
  que esta comunicación está libre de virus, de la interceptación o de 
interferencia.

  __

  [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] quebrar string

2006-03-16 Por tôpico Rafael Mueller
O problema é que a string pode ter um número variável de delimitadores.

Qual seria a melhor solução neste caso?

Grato,

-- Rafael

On 3/15/06, Marcio Portes <[EMAIL PROTECTED]> wrote:
>
> Uma  metodo seria:
>
> SQL> var x varchar2(20)
> SQL>
> SQL> exec :x := '/34/25/16/57' || '/'
>
> PL/SQL procedure successfully completed.
>
>
> X
> 
> /34/25/16/57/
>
> SQL>
> SQL> select substr(:x, instr(:x, '/',1, 1)+1, instr(:x, '/', 1, 2) -
> (instr(:x, '/',1, 1)+1)  ) col1,
>   2 substr(:x, instr(:x, '/',1, 2)+1, instr(:x, '/', 1, 3) -
> (instr(:x, '/',1, 2)+1)  ) col2,
>   3 substr(:x, instr(:x, '/',1, 3)+1, instr(:x, '/', 1, 4) -
> (instr(:x, '/',1, 3)+1)  ) col3,
>   4 substr(:x, instr(:x, '/',1, 4)+1, instr(:x, '/', 1, 5) -
> (instr(:x, '/',1, 4)+1)  ) col4
>   5from dual
>   6  /
>
> COL1 COL2
> COL3 COL4
>  
>  ---
> 34   25
> 16   57
>
> 1 row selected.
>
>
> On 3/15/06, Rafael Mueller <[EMAIL PROTECTED]> wrote:
> >
> > Olá,
> >
> > possuo uma string que é uma sequencia de códigos,
> > gerada por um sys_connect_by_path numa consulta hierarquica, por
> exemplo:
> > "/34/25/16/57"
> >
> > Gostaria de saber se há alguma maneira de eu ter essa string como
> entrada
> > e na saída elas forem separadas em (4 neste exemplo) colunas.
> >
> > col1 | col2 | col3 | col4
> > ---|||
> > 34   |  25   |  16  |  57
> >
> >
> > Grato,
> >
> > -- Rafael
> >
> >
> > [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
> > __
> >
> > Links do Yahoo! Grupos
> >
> >
> >
> >
> >
> >
> >
> >
>
>
> --
> Marcio Portes
> Material Tecnico em Portugues - http://mportes.blogspot.com
> Practical Learning Oracle -
> http://mportes.blogspot.com/2006/02/practical-learning-oracle.html
>
>
> [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
> __
>
> 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 
__
 
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] quebrar string

2006-03-15 Por tôpico Marcio Portes
Uma  metodo seria:

SQL> var x varchar2(20)
SQL>
SQL> exec :x := '/34/25/16/57' || '/'

PL/SQL procedure successfully completed.


X

/34/25/16/57/

SQL>
SQL> select substr(:x, instr(:x, '/',1, 1)+1, instr(:x, '/', 1, 2) -
(instr(:x, '/',1, 1)+1)  ) col1,
  2 substr(:x, instr(:x, '/',1, 2)+1, instr(:x, '/', 1, 3) -
(instr(:x, '/',1, 2)+1)  ) col2,
  3 substr(:x, instr(:x, '/',1, 3)+1, instr(:x, '/', 1, 4) -
(instr(:x, '/',1, 3)+1)  ) col3,
  4 substr(:x, instr(:x, '/',1, 4)+1, instr(:x, '/', 1, 5) -
(instr(:x, '/',1, 4)+1)  ) col4
  5from dual
  6  /

COL1 COL2
COL3 COL4
 
 ---
34   25
16   57

1 row selected.


On 3/15/06, Rafael Mueller <[EMAIL PROTECTED]> wrote:
>
> Olá,
>
> possuo uma string que é uma sequencia de códigos,
> gerada por um sys_connect_by_path numa consulta hierarquica, por exemplo:
> "/34/25/16/57"
>
> Gostaria de saber se há alguma maneira de eu ter essa string como entrada
> e na saída elas forem separadas em (4 neste exemplo) colunas.
>
> col1 | col2 | col3 | col4
> ---|||
> 34   |  25   |  16  |  57
>
>
> Grato,
>
> -- Rafael
>
>
> [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
> __
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


--
Marcio Portes
Material Tecnico em Portugues - http://mportes.blogspot.com
Practical Learning Oracle -
http://mportes.blogspot.com/2006/02/practical-learning-oracle.html


[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 
__
 
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