Josinei,
Desculpe-me dar uma resposta assim também, pois pensei que a dúvida era
somente esta.
Quanto ao fato de usar * dentro da subconsulta, eu também já tentei algo
assim , usando ROW_NUMBER(), e não funcionou.
Testei varias vezes e cheguei a conclusão de que dentro da subconsulta é
necessário declarar as colunas envolvidas.
Posso estar enganado, pois não sou DBA formado, mas do que aprendi
apanhando é isso que sei. [rss..].
At.
Marcelo Alberto Lauschner
Depto. De Informática
Auto Pratense Ltda
* - Fax: (0XX54) 3242-3615
* - E-mail: mailto:[EMAIL PROTECTED]
[EMAIL PROTECTED]
_
De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Josinei Barbosa da Silva
Enviada em: quarta-feira, 30 de agosto de 2006 16:53
Para: oracle_br@yahoogrupos.com.br
Assunto: RES: [oracle_br] Re: Problemas no uso da função UPPER()
Então Marcelo, seria mais a SQL original é bem maior que essa e tem
uma série de amarrações com a subconsulta.
Coloquei essa de exemplo para simplificar a explicação.
--- Em oracle_br@yahoogrupos.com.br, Marcelo [EMAIL PROTECTED] escreveu
Não seria mais simples escrever o SQL assim:
SELECT P.*
FROM EST_PRODUTOS P
WHERE UPPER(P.EST_ST_ALTERNATIVO) = UPPER(`111.222.333/N');
At.
Marcelo Alberto Lauschner
Depto. De Informática
Auto Pratense Ltda
* - Fax: (0XX54) 3242-3615
* - E-mail: mailto:[EMAIL PROTECTED]
[EMAIL PROTECTED]
_
De: oracle_br@yahoogrupos.com.br
[mailto:[EMAIL PROTECTED] Em
nome de Josinei Barbosa da Silva
Enviada em: quarta-feira, 30 de agosto de 2006 16:27
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Re: Problemas no uso da função UPPER()
Desculpe, foi erro de digitação sim...
Pra deixar o código mais limpo, só anexei aqui uma subconsulta da
minha instrução achando que ela era o problema. Falha minha. Na
verdade o problema estava no todo (acabamos de descobrir)
Veja, se executar a instrução abaixo, não funciona (tb não dá erro):
SELECT *
FROM(SELECT *
est_produtos
) p
WHERE upper(p.pro_st_alternativo) = upper('111.222.333/N');
Agora, se faço como abaixo, funciona:
SELECT *
FROM(SELECT pro_st_alternativo
FROM est_produtos
) p
WHERE upper(p.pro_st_alternativo) = upper('111.222.333/N');
Ou seja, se usar o asterisco na subconsulta e uma de suas colunas na
cláusula WHERE da instrução principal, ocorre o problema.
Resta saber porque! Alguém saberia dizer se tem uma explicação
aceitável ou se é um bug do Oracle?
Obrigado pela atenção.
--- Em oracle_br@yahoogrupos.com.br, Andre Santos
[EMAIL PROTECTED] escreveu
Josinei
Não sei se foi erro de digitação, mas numa consulta a tabela está como
PRODUTOS e na outra consta EST_PRODUTOS.
[ ]
André
Em 30/08/06, Josinei Barbosa da Silva [EMAIL PROTECTED]
escreveu:
Boa tarde a todos.
Alguém já viu algo assim:
Eu tenho a seguinte select:
SELECT *
FROM produtos p
WHERE upper(p.pro_st_alternativo) = upper('111.222.333/N');
Executo isso e não retorna nada.
Se eu alterar para a select abaixo, retorna o registro desejado:
SELECT *
FROM est_produtos p
WHERE p.pro_st_alternativo = '111.222.333/N';
A versão do Oracle Database usado é 9.2.0.4
Se alguém puder me ajudar, fico muito grato.
[As partes desta mensagem que não continham texto foram removidas]
[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/
--__
OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE:
http://www.oraclebr.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