Faça um loop no array, do inicio ao fim, concatenando com virgula, monte a
string, o select e por fim utilize o execute immediate.

 

A solução que te passei funciona, é só tratar a string. No final o EXECUTE
IMMEDIATE receberia um SQL +ou- assim:

 

SELECT MAX(valor) 

FROM tabela

WHERE nome IN ( ‘Willian_Bonner’, ‘Silvio_Santos’, ‘Pedro_Cabral’,
‘Gustavo_Borges’ );

 

 

E retornaria pra uma variável, com o valor que você queria.

 

Não entendi qual a dificuldade então... oq não se aplica ao seu caso?

 

Abs,

 

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] Em
nome de Kalango Brasilis
Enviada em: terça-feira, 20 de novembro de 2007 10:39
Para: [email protected]
Assunto: Res: RES: [oracle_br] Lista (Array)

 

Grato pela resposta mas, ainda não é isso que eu preciso.....

A lista que vou receber como parametro é algo do tipo:

Willian_Bonner
Silvio_Santos
Pedro_Cabral
Gustavo_Borges

Dai eu preciso fazer um join (comparação) com esses nomes em uma tabela do
tipo:

ID_Number | Nome | Valor
1 Willian_Bonner 4
2 Silvio_Santos 3
3 Pedro_Cabral 10

E ter com retorno somente o nome de maior valor. No caso o Pedro_Cabral.

Será que eu consegui exemplificar bem !

Agradeço novamente pela ajuda.

Eric Arantes

----- Mensagem original ----
De: Bruno Lorenzini <listas.distribuicao
<mailto:listas.distribuicao%40gmail.com> @gmail.com>
Para: [EMAIL PROTECTED] <mailto:oracle_br%40yahoogrupos.com.br> os.com.br
Enviadas: Terça-feira, 20 de Novembro de 2007 9:07:06
Assunto: RES: [oracle_br] Lista (Array)

Vamos supor que a lista de valores venha separada por virgula.

Ex.: nome1, nome2, nome3, nome4

Recebe eles como parâmetro, e em seguida trate, colocando as aspas

simples... algo +ou- assim

select '''' || replace( replace('Nome1, nome2, nome3, nome4',' '), ',',

''',''') || '''' 

into vcParamEntrada

from dual

O primeiro replace arranca os espaços em branco e o segundo se encarrega de

colocar as aspas..

vcSQL := ‘SELECT MAX(campo) FROM TABELA WHERE ... AND nome IN (‘ ||

vcParamEntrada || ‘)’;

e agora…

EXECUTE IMMEDIATE vcSQL INTO variavel

A idéia é +ou- essa...

Abs,

_____ 

De: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] Em

nome de Kalango Brasilis

Enviada em: segunda-feira, 19 de novembro de 2007 17:40

Para: [EMAIL PROTECTED] os.com.br

Assunto: [oracle_br] Lista (Array)

Boa tarde a todos.

Estou com um problema e preciso de uma ajuda. Seguinte:

1 - Eu preciso receber como parametro em uma function uma lista com vários

nomes.

2 - Depois eu preciso "pegar" esse nomes dessa lista e comparar com os nomes

de uma tabela

3 - Através dessa comparação recuperar o maior id dessa tabela que é do tipo

(id, nome)

Ou seja preciso do nome ( vindo da lista) com maior ID na tabela.

Utililo Oracle 10g PL/Sql 7

Grato pela ajuda.

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

armazenamento!

http://br.mail. <http://br.mail. yahoo.com/> yahoo.com/

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

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

<!--

#ygrp-mkp{
border:1px solid #d8d8d8;font-family:Arial;margin:14px 0px;padding:0px
14px;}
#ygrp-mkp hr{
border:1px solid #d8d8d8;}
#ygrp-mkp #hd{
color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px
0px;}
#ygrp-mkp #ads{
margin-bottom:10px;}
#ygrp-mkp .ad{
padding:0 0;}
#ygrp-mkp .ad a{
color:#0000ff;text-decoration:none;}
-->

<!--

#ygrp-sponsor #ygrp-lc{
font-family:Arial;}
#ygrp-sponsor #ygrp-lc #hd{
margin:10px 0px;font-weight:bold;font-size:78%;line-height:122%;}
#ygrp-sponsor #ygrp-lc .ad{
margin-bottom:10px;padding:0 0;}
-->

<!--

#ygrp-mlmsg {font-size:13px;font-family:arial, helvetica, clean,
sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean,
sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;}
#ygrp-vitnav{
padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}
#ygrp-vitnav a{
padding:0 1px;}
#ygrp-actbar{
clear:both;margin:25px 0;white-space:nowrap;color:#666;text-align:right;}
#ygrp-actbar .left{
float:left;white-space:nowrap;}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;font-size:77%;padding:15px 0;}
#ygrp-ft{
font-family:verdana;font-size:77%;border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;}

#ygrp-vital{
background-color:#e0ecee;margin-bottom:20px;padding:2px 0 8px 8px;}
#ygrp-vital #vithd{
font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform
:uppercase;}
#ygrp-vital ul{
padding:0;margin:2px 0;}
#ygrp-vital ul li{
list-style-type:none;clear:both;border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;paddin
g-right:.5em;}
#ygrp-vital ul li .cat{
font-weight:bold;}
#ygrp-vital a{
text-decoration:none;}

#ygrp-vital a:hover{
text-decoration:underline;}

#ygrp-sponsor #hd{
color:#999;font-size:77%;}
#ygrp-sponsor #ov{
padding:6px 13px;background-color:#e0ecee;margin-bottom:20px;}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;margin:0;}
#ygrp-sponsor #ov li{
list-style-type:square;padding:6px 0;font-size:77%;}
#ygrp-sponsor #ov li a{
text-decoration:none;font-size:130%;}
#ygrp-sponsor #nc{
background-color:#eee;margin-bottom:20px;padding:0 8px;}
#ygrp-sponsor .ad{
padding:8px 0;}
#ygrp-sponsor .ad #hd1{
font-family:Arial;font-weight:bold;color:#628c2a;font-size:100%;line-height:
122%;}
#ygrp-sponsor .ad a{
text-decoration:none;}
#ygrp-sponsor .ad a:hover{
text-decoration:underline;}
#ygrp-sponsor .ad p{
margin:0;}
o{font-size:0;}
.MsoNormal{
margin:0 0 0 0;}
#ygrp-text tt{
font-size:120%;}
blockquote{margin:0 0 0 4px;}
.replbq{margin:4;}
-->

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
http://br.mail. <http://br.mail.yahoo.com/> yahoo.com/

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

 



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

Responder a