Re: RES: [oracle_br] problema sql
Seguramente, existem varios outros metodos, aqui vai um exemplo de mais um deles. [EMAIL PROTECTED]> create or replace type array as table of varchar2 (50); 2 / Type created. [EMAIL PROTECTED]> [EMAIL PROTECTED]> create or replace function f ( p_string in varchar2 ) 2 return array 3 is 4 l_stringvarchar2(50) default p_string || ','; 5 l_data array := array(); 6 n number; 7 begin 8loop 9exit when l_string is null; 10n := instr( l_string, ',' ); 11l_data.extend; 12l_data(l_data.count) := 13 ltrim( rtrim( substr( l_string, 1, n-1 ) ) ); 14l_string := substr( l_string, n+1 ); 15end loop; 16return l_data; 17 end; 18 / Function created. [EMAIL PROTECTED]> show error No errors. [EMAIL PROTECTED]> select * from t; X - 2 3 4 45 36 26 74 7 rows selected. [EMAIL PROTECTED]> select cast( column_value as number ) x 2from table( cast( f('1,2,3,4,5,6,7,8') as array ) ) 3 / X - 1 2 3 4 5 6 7 8 8 rows selected. [EMAIL PROTECTED]> [EMAIL PROTECTED]> select cast( column_value as number ) x 2from table( cast( f('1,2,3,4,5,6,7,8') as array ) ) 3 minus 4 select x from t; X - 1 5 6 7 8 5 rows selected. -- Marcio Portes http://mportes.blogspot.com Rafael Mueller wrote: > O problema é que A não é uma tabela, é uma string, apenas uma > sequencia de códigos > > On 7/12/05, Gari Julio Einsfeldt <[EMAIL PROTECTED]> wrote: > >>Use a teoria dos conjuntos: >> >>select A from X >>minus >>select B from Y >>/ >> >>O resultado sera a lista de valores de A que não existem em B. >> >>-Mensagem original- >>De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] >>nome de Rafael Mueller >>Enviada em: terça-feira, 12 de julho de 2005 10:08 >>Para: oracle_br@yahoogrupos.com.br >>Assunto: [oracle_br] problema sql >> >> >>Olá, >> >>não estou conseguindo montar o sql para fazer o seguinte. Eu recebo >>uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma >>tabela com vários códigos(2,3,4,45,36,26,74). >> >>Preciso saber como seria o SQL para eu descobrir quais códigos da >>sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) >> >>Grato >> >> >>__ >> >>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 >> >> >> >> >> >> >> >> > > > > __ > > 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.c
Re: RES: [oracle_br] problema sql
Vou fazer uma função então, Obrigado a todos que responderam On 7/12/05, Ronaldo Sales <[EMAIL PROTECTED]> wrote: > Se fosse o contrario, o que tem na tabela e não tem na lista era fácil. Mas > em sendo o que tem na lista que não tem na tabela somente com sql puro fica > complicado. > > Teria que criar uma funçãozinha pra quebrar a sua string. > > Ronaldo. > > > > > > De:oracle_br@yahoogrupos.com.br > > Para:oracle_br@yahoogrupos.com.br > > Cópia: > > Data:Tue, 12 Jul 2005 11:18:18 -0300 > > Assunto:Re: RES: [oracle_br] problema sql > > O problema é que A não é uma tabela, é uma string, apenas uma > sequencia de códigos > > On 7/12/05, Gari Julio Einsfeldt wrote: > > Use a teoria dos conjuntos: > > > > select A from X > > minus > > select B from Y > > / > > > > O resultado sera a lista de valores de A que não existem em B. > > > > -Mensagem original- > > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] > > nome de Rafael Mueller > > Enviada em: terça-feira, 12 de julho de 2005 10:08 > > Para: oracle_br@yahoogrupos.com.br > > Assunto: [oracle_br] problema sql > > > > > > Olá, > > > > não estou conseguindo montar o sql para fazer o seguinte. Eu recebo > > uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma > > tabela com vários códigos(2,3,4,45,36,26,74). > > > > Preciso saber como seria o SQL para eu descobrir quais códigos da > > sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) > > > > Grato > > > > > > __ > > > > 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 > > > > > > > > > > > > > > > > > > > __ > > 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 > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > __ > > 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: RES: [oracle_br] problema sql
Se fosse o contrario, o que tem na tabela e não tem na lista era fácil. Mas em sendo o que tem na lista que não tem na tabela somente com sql puro fica complicado. Teria que criar uma funçãozinha pra quebrar a sua string. Ronaldo. De:oracle_br@yahoogrupos.com.br Para:oracle_br@yahoogrupos.com.br Cópia: Data:Tue, 12 Jul 2005 11:18:18 -0300 Assunto:Re: RES: [oracle_br] problema sql O problema é que A não é uma tabela, é uma string, apenas uma sequencia de códigos On 7/12/05, Gari Julio Einsfeldt wrote: > Use a teoria dos conjuntos: > > select A from X > minus > select B from Y > / > > O resultado sera a lista de valores de A que não existem em B. > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] > nome de Rafael Mueller > Enviada em: terça-feira, 12 de julho de 2005 10:08 > Para: oracle_br@yahoogrupos.com.br > Assunto: [oracle_br] problema sql > > > Olá, > > não estou conseguindo montar o sql para fazer o seguinte. Eu recebo > uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma > tabela com vários códigos(2,3,4,45,36,26,74). > > Preciso saber como seria o SQL para eu descobrir quais códigos da > sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) > > Grato > > > __ > > 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 > > > > > > > > __ 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 [As partes desta mensagem que não continham texto foram removidas] __ 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: RES: [oracle_br] problema sql
O problema é que A não é uma tabela, é uma string, apenas uma sequencia de códigos On 7/12/05, Gari Julio Einsfeldt <[EMAIL PROTECTED]> wrote: > Use a teoria dos conjuntos: > > select A from X > minus > select B from Y > / > > O resultado sera a lista de valores de A que não existem em B. > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] > nome de Rafael Mueller > Enviada em: terça-feira, 12 de julho de 2005 10:08 > Para: oracle_br@yahoogrupos.com.br > Assunto: [oracle_br] problema sql > > > Olá, > > não estou conseguindo montar o sql para fazer o seguinte. Eu recebo > uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma > tabela com vários códigos(2,3,4,45,36,26,74). > > Preciso saber como seria o SQL para eu descobrir quais códigos da > sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) > > Grato > > > __ > > 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 > > > > > > > > __ 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
RES: [oracle_br] problema sql
Use a teoria dos conjuntos: select A from X minus select B from Y / O resultado sera a lista de valores de A que não existem em B. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Rafael Mueller Enviada em: terça-feira, 12 de julho de 2005 10:08 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] problema sql Olá, não estou conseguindo montar o sql para fazer o seguinte. Eu recebo uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma tabela com vários códigos(2,3,4,45,36,26,74). Preciso saber como seria o SQL para eu descobrir quais códigos da sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) Grato __ 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
RES: [oracle_br] problema sql
Rafael, Utilize o operador not exists que talvez possa lhe ajudar. select cod, nome from funcionario where not exists ( select 1 from s_pedido where s_pedido.cod_vendedor = funcionario.cod ); No exemplo acima é exibido todos os funcionarios que não tenha pedido realizado. [ ]'s Salvio Padipskas -Mensagem original- De: Rafael Mueller [mailto:[EMAIL PROTECTED] Enviada em: terça-feira, 12 de julho de 2005 10:08 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] problema sql Olá, não estou conseguindo montar o sql para fazer o seguinte. Eu recebo uma sequencia com n códigos (digamos 1,2,3,4,5,6,7,8) e tenho uma tabela com vários códigos(2,3,4,45,36,26,74). Preciso saber como seria o SQL para eu descobrir quais códigos da sequencia que eu recebo não estão na tabela. (Neste caso 1,5,6,7,8) Grato __ 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 [As partes desta mensagem que não continham texto foram removidas] __ 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