Re: [oracle_br] duvia ODI

2012-08-22 Por tôpico Paulo Petruzalek
Bom dia Jorge.
 
O ODI foi feito para isso mesmo, integração de dados entre plataformas 
diferentes. No seu caso vai ser interessante usar o recurso Changed Data 
Capture para pegar apenas os dados modificados:
 
http://docs.oracle.com/cd/E21764_01/integrate./e12643/data_capture.htm
 

[]'s
 
Paulo



De: jorge sanfelice jorgesanfel...@gmail.com
Para: oracle_br@yahoogrupos.com.br 
Enviadas: Quarta-feira, 22 de Agosto de 2012 11:05
Assunto: [oracle_br] duvia ODI

Bom dia Pessoal,

Estou com uma duvida qnt ao uso do ODI.

Estou com uma situacao onde estao querendo usa-lo para sincronizacoes de
dados entre servidores de plataformas diferentes
Ex:
Postgresql - Oracle
Ou até mesmo entre Postgresql - Postgresql


A idéia seria manter sincronizadas algumas colunas de tabelas especificar
ou até mesmo uma tabela interira.

A Sincronizacao seria unidirecional, ou seja, sempre do Postgresql para o
Oracle.

Alguem sabe dizer se isso é recomendavel? Ou se até mesmo, tem argumentos
para dizer ... nao é feito para isso,... , nao use com essa finalidade,
... vai dar problema

Obs: Hoje temos sincronizacoes que costumam rodar a cada 5min. Elas pegam
dados de colunas ou tabelas de um server de banco e atualizam em outro
banco (indenpendente da plataforma do banco). Essas sincronizacoes sao
feitas em sua maioria em C.
Agora que temos o ODI, estao querendo mudar tudo... porem nao tenho
argumentos tecnicos pra confirmar se o ODI pode substituir essas aplicacoes
que fazem isso hoje.

Agradeço a ajuda.


[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] Re: Pesquisa Reports

2012-08-22 Por tôpico Junior
Muito obrigado pela ajuda.

Ótimas as dicas





 De: J. Laurindo Chiappa jlchia...@yahoo.com.br
Para: oracle_br@yahoogrupos.com.br 
Enviadas: Quarta-feira, 22 de Agosto de 2012 11:11
Assunto: [oracle_br] Re: Pesquisa Reports
 

  
Ah, esqueci de te passar o link de uma das soluções de pesquisa de fontes 
(Pl/SQL, mas afaik funciona com SQLs também) no Reports, que é 
https://www.finditez.com/press/2012_july_22.aspx 

[]s

Chiappa

--- Em oracle_br@yahoogrupos.com.br, J. Laurindo Chiappa jlchiappa@... 
escreveu

   Eu sei que tem alguns que fornecem coisa do tipo (como 
 http://www.aug10.com/ e http://www.kumaran.com/program_scanner.asp), mas 
 normalmente são produtos caros e especializados, e  de difícil implementação 
 : se não for uma qtdade absurda de .RDFs, porque vc OU não usa a opção de os 
 salvar em tabelas Oracle (que podem ser depois pesquisadas), OU se for 
 reports 9i ou superior os salva em .HTML , OU (o melhor, talvez) simplesmente 
 não usa a opção de gerar arquivo-texto com a definição dos reports - na 
 versão 6i era algo tipo :
 
   RWCON60 source=testfile.rdf dest=testfile.rex STYPE=RDFFILE DTYPE=REXFILE 
 BATCH=YES OVERWRITE=YES
 
 e que podia/pode inclusive ser automatizado num script .BAT , e o .REX 
 resultante é um arquivo rich-text, com o texto dos SQLs e PL/SQLs em plain 
 text junto com alguns binários dos objetos Reports, a porção-texto Pode ser 
 pesquisada via editor de texto, grep-like tools, como quiser 
 
  []s
 
Chiappa
 
 --- Em oracle_br@yahoogrupos.com.br, Junior roberjr_sec@ escreveu
 
  Pessoal, bom dia
  
  Alguém conhece algum software que dê para pesquisar dentro das queries do 
  reports ??
  Ex: Localizar o campo numero_nf
  
  
  Desde de já agradeço.
  
  
  [As partes desta mensagem que não continham texto foram removidas]
 



 

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



[oracle_br] Re: duvia ODI

2012-08-22 Por tôpico J. Laurindo Chiappa
Colega, sim, o ODI é feito para isso (embora não apenas para isso), se vc 
olhar na FAQ dele no site da Oracle 
(http://www.oracle.com/technetwork/middleware/data-integrator/odi-11g-faq-168660.html
 ) vc vai ver que o seu uso pretendido é sim suportado O grande lance aqui, 
porém, que Só Você pode avaliar, é : compensa o 
investimento/custo/tempo/esforço para substituir as rotinas que vc já tem hoje 
 Só vc pode dizer que NÃO (porque, digamos, as rotinas de hoje estão 
altamente estáveis, a manutenção é fácil por causa do conhecimento in-house, 
etc) ou que SIM, compensa porque a situação é ao contrário Aliás, sempre 
que se fala em troca de tecnologia (que é o que vc vai fazer) neguinho esquece 
de computar o CUSTO de treinamento de pessoal e absorção da nova tecnologia, 
que em alguns casos pode nem ser tão alto mas que EXISTE, Não É Zero, isso não 
é
 Outro ponto que só depois do teste você vai poder dizer é o nível de 
Suporte que ele dá ao banco não-Oracle : claro que ele conecta e lê dados, mas 
SERÁ que (por exemplo)  ele Realmente reconhece 100% dos datatypes do Post que 
vc usa  E dos construtos programados e/ou dependentes de SQl, como views 
??? Só você, testando no SEU ambiente post, com as SUAS tabelas/views/etc é que 
pode julgar isso  Vc até pode ir pros Grupos de usuários do post e lançar 
essa pergunta lá, mas a resposta final só mesmo com o seu teste no seu 
ambiente
 
  []s
  
Chiappa

--- Em oracle_br@yahoogrupos.com.br, jorge sanfelice jorgesanfelice@... 
escreveu

 Bom dia Pessoal,
 
 Estou com uma duvida qnt ao uso do ODI.
 
 Estou com uma situacao onde estao querendo usa-lo para sincronizacoes de
 dados entre servidores de plataformas diferentes
 Ex:
 Postgresql - Oracle
 Ou até mesmo entre Postgresql - Postgresql
 
 
 A idéia seria manter sincronizadas algumas colunas de tabelas especificar
 ou até mesmo uma tabela interira.
 
 A Sincronizacao seria unidirecional, ou seja, sempre do Postgresql para o
 Oracle.
 
 Alguem sabe dizer se isso é recomendavel? Ou se até mesmo, tem argumentos
 para dizer ... nao é feito para isso,... , nao use com essa finalidade,
 ... vai dar problema
 
 Obs: Hoje temos sincronizacoes que costumam rodar a cada 5min. Elas pegam
 dados de colunas ou tabelas de um server de banco e atualizam em outro
 banco (indenpendente da plataforma do banco). Essas sincronizacoes sao
 feitas em sua maioria em C.
 Agora que temos o ODI, estao querendo mudar tudo... porem nao tenho
 argumentos tecnicos pra confirmar se o ODI pode substituir essas aplicacoes
 que fazem isso hoje.
 
 Agradeço a ajuda.
 
 
 [As partes desta mensagem que não continham texto foram removidas]





[oracle_br] Re: Memoria BD Oracle

2012-08-22 Por tôpico J. Laurindo Chiappa
  Colega, dificilmente a Oracle se mete a ditar configurações, nem a fornecer 
how-tos, ela se limita a documentar que Sim, SGAs grandes demandam mais CPU 
(por causa do latching extra que vai haver, principalmente : vide manual 
Concepts e Tuning, bem como as notas metalink referentes á latch) mas só vc, 
analisando o seu ambiente, é que pode dizer se o overhead resultante da SGA 
maior compensou (por incidência maior de dados em cache , digamos) ou não 
Inclusive esse potencial overhead via de regra Não é levado em conta pelos 
Assistentes Oracle (principalmente no OEM), é algo com que vc tem que se 
precaver. Alguns links aonde os Autores citam essa preocupação com sair 
aumentando RAM aleatoriamente podem ser 
http://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:3296923986640 
, 
http://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:30011178429375
 e 
http://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:707585800346136316
  
  
 Quando alguém te falar de de aumentar SGA, dado o fato que SGA 
basicamente contém os pools e caches do RDBMS, normalmente o que a pessoa acha 
é que I/O em memória não custa nada, e/ou é infinitamente mais rápido do que 
I/O em disco, então mesmo que o mais horroroso dos SQLs faça toneladas de I/Os 
desnecessários, na cabecinha da pessoa se os I/Os foram em RAM tudo está bem, 
então ao invés de corrigir o SQl neguinho despeja RAM no problema Isso é a 
maior das falsidades, alguns papers clássicos como 
http://raj_oracle90.tripod.com/sitebuildercontent/sitebuilderfiles/whya99percentbuffercacheratioisnotok-carymillsap.pdf
 ou http://www.quest.com/whitepapers/TuningOracleWithoutCacheHit_new.pdf já 
desbancaram isso há anos, veja se não é algo nesse sentido que a pessoa tá se 
referindo 
 
  []s
  
 Chiappa

--- Em oracle_br@yahoogrupos.com.br, Raphael Franco phadba@... escreveu

 Pessoal,
 
 Se eu tenho um servidor de 350Gb de memória e vejo que atraves de 
 estatisticas/relatorios 
 que o ideal para SGA e PGA = 40Gb, não faz sentido em colocar 120Gb atoa, 
 certo ?? Vejo
 que pode até piorar o processamento do servidor, visto que demanda mais 
 recursos(CPU) para gerenciar
 essa memória.
 
 Existe algum documento oficial que fale a respeito ??
 
 att.
 Raphael.
 
 [As partes desta mensagem que não continham texto foram removidas]





Re: [oracle_br] Re: duvia ODI

2012-08-22 Por tôpico jorge sanfelice
Galera,

Agradeço as dicas, acho q o melhor é tentar usar isso.

A ideia inicial é usar postgresql para postgresql (esse é onde temos a
maior necessidade).

E outro postgresql para um Oracle (apenas uma integracao inicialmente)

Se funcionar de postgresql para postgresql, ja sera show.

Em 22 de agosto de 2012 13:18, J. Laurindo Chiappa
jlchia...@yahoo.com.brescreveu:

 **


 Colega, sim, o ODI é feito para isso (embora não apenas para isso), se vc
 olhar na FAQ dele no site da Oracle (
 http://www.oracle.com/technetwork/middleware/data-integrator/odi-11g-faq-168660.html)
  vc vai ver que o seu uso pretendido é sim suportado O grande lance
 aqui, porém, que Só Você pode avaliar, é : compensa o
 investimento/custo/tempo/esforço para substituir as rotinas que vc já tem
 hoje  Só vc pode dizer que NÃO (porque, digamos, as rotinas de hoje
 estão altamente estáveis, a manutenção é fácil por causa do conhecimento
 in-house, etc) ou que SIM, compensa porque a situação é ao contrário
 Aliás, sempre que se fala em troca de tecnologia (que é o que vc vai fazer)
 neguinho esquece de computar o CUSTO de treinamento de pessoal e absorção
 da nova tecnologia, que em alguns casos pode nem ser tão alto mas que
 EXISTE, Não É Zero, isso não é
 Outro ponto que só depois do teste você vai poder dizer é o nível de
 Suporte que ele dá ao banco não-Oracle : claro que ele conecta e lê dados,
 mas SERÁ que (por exemplo) ele Realmente reconhece 100% dos datatypes do
 Post que vc usa  E dos construtos programados e/ou dependentes de SQl,
 como views ??? Só você, testando no SEU ambiente post, com as SUAS
 tabelas/views/etc é que pode julgar isso  Vc até pode ir pros Grupos de
 usuários do post e lançar essa pergunta lá, mas a resposta final só mesmo
 com o seu teste no seu ambiente

 []s

 Chiappa

 --- Em oracle_br@yahoogrupos.com.br, jorge sanfelice jorgesanfelice@...
 escreveu

 
  Bom dia Pessoal,
 
  Estou com uma duvida qnt ao uso do ODI.
 
  Estou com uma situacao onde estao querendo usa-lo para sincronizacoes de
  dados entre servidores de plataformas diferentes
  Ex:
  Postgresql - Oracle
  Ou até mesmo entre Postgresql - Postgresql
 
 
  A idéia seria manter sincronizadas algumas colunas de tabelas especificar
  ou até mesmo uma tabela interira.
 
  A Sincronizacao seria unidirecional, ou seja, sempre do Postgresql para o
  Oracle.
 
  Alguem sabe dizer se isso é recomendavel? Ou se até mesmo, tem argumentos
  para dizer ... nao é feito para isso,... , nao use com essa finalidade,
  ... vai dar problema
 
  Obs: Hoje temos sincronizacoes que costumam rodar a cada 5min. Elas pegam
  dados de colunas ou tabelas de um server de banco e atualizam em outro
  banco (indenpendente da plataforma do banco). Essas sincronizacoes sao
  feitas em sua maioria em C.
  Agora que temos o ODI, estao querendo mudar tudo... porem nao tenho
  argumentos tecnicos pra confirmar se o ODI pode substituir essas
 aplicacoes
  que fazem isso hoje.
 
  Agradeço a ajuda.
 
 
  [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




RES: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Márcio - Grupos Oracle
Se eu entendi, vê se esse select ajuda:

 

SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV

WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS 

 
FROM  TITENS_PEDIDO_VENDA TIPV

 
WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)

AND TPV.COR_DO_ITEM = ‘AZUL’;

 

De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
nome de Junior
Enviada em: Wednesday, 22 de August de 2012 14:12
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com filtros
diferentes para o mesmo campo?

 

  

Um Exemplo:

/*TABELA TPEDIDO_VENDAS:
*/
*ID*
*NUMERO_DO_**PEDIDO
*
1
1
2
2
3
3
4
4
5
5

/*TABELA TITENS_PEDIDO_VENDA:
*/
*ID
* *ID_TPEDIDO_VENDAS
* *ITEM
* *COR_DO_ITEM*
1
1
A
AZUL
2
1
B
VERMELHO
3
1
A
VERDE
4
2
A
VERMELHO
5
3
A
VERDE
6
3
A
VERMELHO
7
4
B
VERMELHO
8
4
A
AZUL
9
4
A
VERMELHO
10
5
A
AZUL

Agora que temos as tabelas, preciso selecionar nas duas tabelas os 
pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver 
somente a cor azul ou se tiver somente a cor vermelho, não preciso 
selecioná-lo.
Como ficaria, então, a resposta da minha seleção, baseada nos dados acima:

*ID_PED_VDA
* *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
* *ITEM
* *COR_DO_ITEM*
1
1
1
A
AZUL
1
1
2
B
VERMELHO
4
4
7
B
VERMELHO
4
4
8
A
AZUL
4
4
9
A
VERMELHO

Explicando melhor, preciso selecionar pedidos de vendas que possuem 
itens com a cor azul e itens com a cor vermelho. Este campo cor é 
preenchido somente com uma cor, então, serão selecionados somente os 
pedidos que possuirem itens com a cor azul e também com a cor vermelho. 
Mas os pedidos que tenham itens com azul e não tenham itens com a cor 
vermelho, não quero trazer nesta seleção e também não quero trazer nesta 
seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul, 
resumindo, terão que ter registros com a cor azul e também registros com 
a cor vermelha no mesmo pedido.

Obrigado a todos!

Luiz Junior
Depto-ti Jowanel
Oracle 10G

[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] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Milton Bastos Henriquis Jr.
Marcio, a cor do item está na tabela de itens (filha) e não tabela de
pedidos (pai).


Junior, não é nada dificil fazer essa query.
Sabe fazer subselect?

Pena que não tenho nenhuma base disponível aqui pra simular o teu caso e
montar
a query pra vc... mas seria mais ou menos isso:

select *
from TPEDIDO_VENDAS
where ID IN
  (select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'AZUL')
and ID IN
  (select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'VERMELHO');



Teste aí.






2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br

 **


 Se eu entendi, vê se esse select ajuda:

 SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV

 WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS

 FROM TITENS_PEDIDO_VENDA TIPV

 WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)

 AND TPV.COR_DO_ITEM = ‘AZUL’;

 De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
 nome de Junior
 Enviada em: Wednesday, 22 de August de 2012 14:12
 Para: oracle_br@yahoogrupos.com.br
 Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com filtros
 diferentes para o mesmo campo?


 Um Exemplo:

 /*TABELA TPEDIDO_VENDAS:
 */
 *ID*
 *NUMERO_DO_**PEDIDO
 *
 1
 1
 2
 2
 3
 3
 4
 4
 5
 5

 /*TABELA TITENS_PEDIDO_VENDA:
 */
 *ID
 * *ID_TPEDIDO_VENDAS
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 A
 AZUL
 2
 1
 B
 VERMELHO
 3
 1
 A
 VERDE
 4
 2
 A
 VERMELHO
 5
 3
 A
 VERDE
 6
 3
 A
 VERMELHO
 7
 4
 B
 VERMELHO
 8
 4
 A
 AZUL
 9
 4
 A
 VERMELHO
 10
 5
 A
 AZUL

 Agora que temos as tabelas, preciso selecionar nas duas tabelas os
 pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver
 somente a cor azul ou se tiver somente a cor vermelho, não preciso
 selecioná-lo.
 Como ficaria, então, a resposta da minha seleção, baseada nos dados acima:

 *ID_PED_VDA
 * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 1
 A
 AZUL
 1
 1
 2
 B
 VERMELHO
 4
 4
 7
 B
 VERMELHO
 4
 4
 8
 A
 AZUL
 4
 4
 9
 A
 VERMELHO

 Explicando melhor, preciso selecionar pedidos de vendas que possuem
 itens com a cor azul e itens com a cor vermelho. Este campo cor é
 preenchido somente com uma cor, então, serão selecionados somente os
 pedidos que possuirem itens com a cor azul e também com a cor vermelho.
 Mas os pedidos que tenham itens com azul e não tenham itens com a cor
 vermelho, não quero trazer nesta seleção e também não quero trazer nesta
 seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul,
 resumindo, terão que ter registros com a cor azul e também registros com
 a cor vermelha no mesmo pedido.

 Obrigado a todos!

 Luiz Junior
 Depto-ti Jowanel
 Oracle 10G

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

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

  




-- 
Att,


[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




RES: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Márcio - Grupos Oracle
Verdade, se precisar Júnior, inverta a tabela interna com a externa.

-Mensagem original-
De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
nome de Milton Bastos Henriquis Jr.
Enviada em: Wednesday, 22 de August de 2012 14:42
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com filtros
diferentes para o mesmo campo?

Marcio, a cor do item está na tabela de itens (filha) e não tabela de
pedidos (pai).


Junior, não é nada dificil fazer essa query.
Sabe fazer subselect?

Pena que não tenho nenhuma base disponível aqui pra simular o teu caso e
montar a query pra vc... mas seria mais ou menos isso:

select *
from TPEDIDO_VENDAS
where ID IN
  (select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'AZUL')
and ID IN
  (select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'VERMELHO');



Teste aí.






2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br

 **


 Se eu entendi, vê se esse select ajuda:

 SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV

 WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS

 FROM TITENS_PEDIDO_VENDA TIPV

 WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)

 AND TPV.COR_DO_ITEM = ‘AZUL’;

 De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] 
 Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12
 Para: oracle_br@yahoogrupos.com.br
 Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com 
 filtros diferentes para o mesmo campo?


 Um Exemplo:

 /*TABELA TPEDIDO_VENDAS:
 */
 *ID*
 *NUMERO_DO_**PEDIDO
 *
 1
 1
 2
 2
 3
 3
 4
 4
 5
 5

 /*TABELA TITENS_PEDIDO_VENDA:
 */
 *ID
 * *ID_TPEDIDO_VENDAS
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 A
 AZUL
 2
 1
 B
 VERMELHO
 3
 1
 A
 VERDE
 4
 2
 A
 VERMELHO
 5
 3
 A
 VERDE
 6
 3
 A
 VERMELHO
 7
 4
 B
 VERMELHO
 8
 4
 A
 AZUL
 9
 4
 A
 VERMELHO
 10
 5
 A
 AZUL

 Agora que temos as tabelas, preciso selecionar nas duas tabelas os 
 pedidos que tenham o item com cor azul e com cor vermelho, mas se 
 tiver somente a cor azul ou se tiver somente a cor vermelho, não 
 preciso selecioná-lo.
 Como ficaria, então, a resposta da minha seleção, baseada nos dados acima:

 *ID_PED_VDA
 * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 1
 A
 AZUL
 1
 1
 2
 B
 VERMELHO
 4
 4
 7
 B
 VERMELHO
 4
 4
 8
 A
 AZUL
 4
 4
 9
 A
 VERMELHO

 Explicando melhor, preciso selecionar pedidos de vendas que possuem 
 itens com a cor azul e itens com a cor vermelho. Este campo cor é 
 preenchido somente com uma cor, então, serão selecionados somente os 
 pedidos que possuirem itens com a cor azul e também com a cor vermelho.
 Mas os pedidos que tenham itens com azul e não tenham itens com a cor 
 vermelho, não quero trazer nesta seleção e também não quero trazer 
 nesta seleção os pedidos que tenham a cor vermelho mas não tenham a 
 cor azul, resumindo, terão que ter registros com a cor azul e também 
 registros com a cor vermelha no mesmo pedido.

 Obrigado a todos!

 Luiz Junior
 Depto-ti Jowanel
 Oracle 10G

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

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

  




--
Att,


[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] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Mucio Oliveira
select '** pedido **'
  ,p.*,
  ,'** linhas ***'
  ,i.*
from TPEDIDO_VENDAS  P
,TITENS_PEDIDO_VENDA I
where p.ID = i.ID_TPEDIDO_VENDAS
  and i.COR_DO_ITEM in ('AZUL','VERMELHO')

Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
marcio_...@yahoo.com.br escreveu:

 **


 Verdade, se precisar Júnior, inverta a tabela interna com a externa.

 -Mensagem original-

 De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
 nome de Milton Bastos Henriquis Jr.
 Enviada em: Wednesday, 22 de August de 2012 14:42
 Para: oracle_br@yahoogrupos.com.br
 Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com
 filtros

 diferentes para o mesmo campo?

 Marcio, a cor do item está na tabela de itens (filha) e não tabela de
 pedidos (pai).

 Junior, não é nada dificil fazer essa query.
 Sabe fazer subselect?

 Pena que não tenho nenhuma base disponível aqui pra simular o teu caso e
 montar a query pra vc... mas seria mais ou menos isso:

 select *
 from TPEDIDO_VENDAS
 where ID IN
 (select ID_TPEDIDO_VENDAS
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'AZUL')
 and ID IN
 (select ID_TPEDIDO_VENDAS
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'VERMELHO');

 Teste aí.

 2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br

  **
 
 
  Se eu entendi, vê se esse select ajuda:
 
  SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV
 
  WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS
 
  FROM TITENS_PEDIDO_VENDA TIPV
 
  WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)
 
  AND TPV.COR_DO_ITEM = ‘AZUL’;
 
  De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
  Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12
  Para: oracle_br@yahoogrupos.com.br
  Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com
  filtros diferentes para o mesmo campo?
 
 
  Um Exemplo:
 
  /*TABELA TPEDIDO_VENDAS:
  */
  *ID*
  *NUMERO_DO_**PEDIDO
  *
  1
  1
  2
  2
  3
  3
  4
  4
  5
  5
 
  /*TABELA TITENS_PEDIDO_VENDA:
  */
  *ID
  * *ID_TPEDIDO_VENDAS
  * *ITEM
  * *COR_DO_ITEM*
  1
  1
  A
  AZUL
  2
  1
  B
  VERMELHO
  3
  1
  A
  VERDE
  4
  2
  A
  VERMELHO
  5
  3
  A
  VERDE
  6
  3
  A
  VERMELHO
  7
  4
  B
  VERMELHO
  8
  4
  A
  AZUL
  9
  4
  A
  VERMELHO
  10
  5
  A
  AZUL
 
  Agora que temos as tabelas, preciso selecionar nas duas tabelas os
  pedidos que tenham o item com cor azul e com cor vermelho, mas se
  tiver somente a cor azul ou se tiver somente a cor vermelho, não
  preciso selecioná-lo.
  Como ficaria, então, a resposta da minha seleção, baseada nos dados
 acima:
 
  *ID_PED_VDA
  * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
  * *ITEM
  * *COR_DO_ITEM*
  1
  1
  1
  A
  AZUL
  1
  1
  2
  B
  VERMELHO
  4
  4
  7
  B
  VERMELHO
  4
  4
  8
  A
  AZUL
  4
  4
  9
  A
  VERMELHO
 
  Explicando melhor, preciso selecionar pedidos de vendas que possuem
  itens com a cor azul e itens com a cor vermelho. Este campo cor é
  preenchido somente com uma cor, então, serão selecionados somente os
  pedidos que possuirem itens com a cor azul e também com a cor vermelho.
  Mas os pedidos que tenham itens com azul e não tenham itens com a cor
  vermelho, não quero trazer nesta seleção e também não quero trazer
  nesta seleção os pedidos que tenham a cor vermelho mas não tenham a
  cor azul, resumindo, terão que ter registros com a cor azul e também
  registros com a cor vermelha no mesmo pedido.
 
  Obrigado a todos!
 
  Luiz Junior
  Depto-ti Jowanel
  Oracle 10G
 
  [As partes desta mensagem que não continham texto foram removidas]
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 

 --
 Att,

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

[oracle_br] Re: Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico ederson2001br
Junior,

Com certeza vão ter outras soluções, visto que, do processador lógico humano 
tem muitos modelos ...

Eu pensei em uma solução usando uma FUNCTION que receba o código do pedido e 
pesquise no ITEM_PEDIDO, setando um flag para quando houver VERMELHO e AZUL no 
mesmo pedido. Desta forma, retornando 1 para existe a condição neste pedido e 
vc testar na query:

select atributos_diversos
from PEDIDO P, ITEM_PEDIDO I
where p.cod_pedido = i.cod_pedido
and fnc_testa_condicao(p.cod_pedido) = 1
and (p.data_ped between to_date('01/08/2012','dd/mm/') and 
to_date('01/08/2012','dd/mm/') + .9);

FNC_TESTA_CONDICAO (p_cod_pedido) return number
is
wflag number := 0;
wazul number := 0;
wvermelho number := 0;
begin
  for r2 in (select cor_item from item_pedido 
   where cod_pedido = p_cod_pedido) loop
if r2.cor_item = 'VERMELHO' then
   wvermelho = wvermelho + 1;
end if;
if r2.cor_item = 'AZUL' then
   wazul = wazul + 1;
end if;
  end loop;
  if wvermelho  0 and wazul  0 then
 wflag := 1;
  end if;
  return wflag;
end;


Pode haver algum erro de compilação, pois escrevi direto aqui.

Ederson Elias
DBA Oracle
http://br.linkedin.com/pub/ederson-elias/24/8b/8b0



--- Em oracle_br@yahoogrupos.com.br, Junior luizcorreiajr@... escreveu

 Um Exemplo:
 
 /*TABELA TPEDIDO_VENDAS:
 */
 *ID*
   *NUMERO_DO_**PEDIDO
 *
 1
   1
 2
   2
 3
   3
 4
   4
 5
   5
 
 
 /*TABELA TITENS_PEDIDO_VENDA:
 */
 *ID
 * *ID_TPEDIDO_VENDAS
 * *ITEM
 * *COR_DO_ITEM*
 1
   1
   A
   AZUL
 2
   1
   B
   VERMELHO
 3
   1
   A
   VERDE
 4
   2
   A
   VERMELHO
 5
   3
   A
   VERDE
 6
   3
   A
   VERMELHO
 7
   4
   B
   VERMELHO
 8
   4
   A
   AZUL
 9
   4
   A
   VERMELHO
 10
   5
   A
   AZUL
 
 
 Agora que temos as tabelas, preciso selecionar nas duas tabelas os 
 pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver 
 somente a cor azul ou se tiver somente a cor vermelho, não preciso 
 selecioná-lo.
 Como ficaria, então, a resposta da minha seleção, baseada nos dados acima:
 
 *ID_PED_VDA
 * *NUMERO_PED_VENDA*  *ID_ITEM_PED_VDA
 * *ITEM
 * *COR_DO_ITEM*
 1
   1
   1
   A
   AZUL
 1
   1
   2
   B
   VERMELHO
 4
   4
   7
   B
   VERMELHO
 4
   4
   8
   A
   AZUL
 4
   4
   9
   A
   VERMELHO
 
 
 Explicando melhor, preciso selecionar pedidos de vendas que possuem 
 itens com a cor azul e itens com a cor vermelho. Este campo cor é 
 preenchido somente com uma cor, então, serão selecionados somente os 
 pedidos que possuirem itens com a cor azul e também com a cor vermelho. 
 Mas os pedidos que tenham itens com azul e não tenham itens com a cor 
 vermelho, não quero trazer nesta seleção e também não quero trazer nesta 
 seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul, 
 resumindo, terão que ter registros com a cor azul e também registros com 
 a cor vermelha no mesmo pedido.
 
 Obrigado a todos!
 
 Luiz Junior
 Depto-ti Jowanel
 Oracle 10G




Re: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Milton Bastos Henriquis Jr.
Também não funciona, Mucio.

Dessa maneira aí vai retornar todos que tenham 'AZUL' ***OU*** 'VERMELHO'.

Ele só quer os que tenham OS DOIS, ou seja, azul ***E***  vermelho.


2012/8/22 Mucio Oliveira omu...@gmail.com

 select '** pedido **'
   ,p.*,
   ,'** linhas ***'
   ,i.*
 from TPEDIDO_VENDAS  P
 ,TITENS_PEDIDO_VENDA I
 where p.ID = i.ID_TPEDIDO_VENDAS
   and i.COR_DO_ITEM in ('AZUL','VERMELHO')

 Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
 marcio_...@yahoo.com.br escreveu:

  **
 
 
  Verdade, se precisar Júnior, inverta a tabela interna com a externa.
 
  -Mensagem original-
 
  De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
 Em
  nome de Milton Bastos Henriquis Jr.
  Enviada em: Wednesday, 22 de August de 2012 14:42
  Para: oracle_br@yahoogrupos.com.br
  Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com
  filtros
 
  diferentes para o mesmo campo?
 
  Marcio, a cor do item está na tabela de itens (filha) e não tabela de
  pedidos (pai).
 
  Junior, não é nada dificil fazer essa query.
  Sabe fazer subselect?
 
  Pena que não tenho nenhuma base disponível aqui pra simular o teu caso e
  montar a query pra vc... mas seria mais ou menos isso:
 
  select *
  from TPEDIDO_VENDAS
  where ID IN
  (select ID_TPEDIDO_VENDAS
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM = 'AZUL')
  and ID IN
  (select ID_TPEDIDO_VENDAS
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM = 'VERMELHO');
 
  Teste aí.
 
  2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br
 
   **
  
  
   Se eu entendi, vê se esse select ajuda:
  
   SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV
  
   WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS
  
   FROM TITENS_PEDIDO_VENDA TIPV
  
   WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)
  
   AND TPV.COR_DO_ITEM = ‘AZUL’;
  
   De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
   Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12
   Para: oracle_br@yahoogrupos.com.br
   Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com
   filtros diferentes para o mesmo campo?
  
  
   Um Exemplo:
  
   /*TABELA TPEDIDO_VENDAS:
   */
   *ID*
   *NUMERO_DO_**PEDIDO
   *
   1
   1
   2
   2
   3
   3
   4
   4
   5
   5
  
   /*TABELA TITENS_PEDIDO_VENDA:
   */
   *ID
   * *ID_TPEDIDO_VENDAS
   * *ITEM
   * *COR_DO_ITEM*
   1
   1
   A
   AZUL
   2
   1
   B
   VERMELHO
   3
   1
   A
   VERDE
   4
   2
   A
   VERMELHO
   5
   3
   A
   VERDE
   6
   3
   A
   VERMELHO
   7
   4
   B
   VERMELHO
   8
   4
   A
   AZUL
   9
   4
   A
   VERMELHO
   10
   5
   A
   AZUL
  
   Agora que temos as tabelas, preciso selecionar nas duas tabelas os
   pedidos que tenham o item com cor azul e com cor vermelho, mas se
   tiver somente a cor azul ou se tiver somente a cor vermelho, não
   preciso selecioná-lo.
   Como ficaria, então, a resposta da minha seleção, baseada nos dados
  acima:
  
   *ID_PED_VDA
   * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
   * *ITEM
   * *COR_DO_ITEM*
   1
   1
   1
   A
   AZUL
   1
   1
   2
   B
   VERMELHO
   4
   4
   7
   B
   VERMELHO
   4
   4
   8
   A
   AZUL
   4
   4
   9
   A
   VERMELHO
  
   Explicando melhor, preciso selecionar pedidos de vendas que possuem
   itens com a cor azul e itens com a cor vermelho. Este campo cor é
   preenchido somente com uma cor, então, serão selecionados somente os
   pedidos que possuirem itens com a cor azul e também com a cor vermelho.
   Mas os pedidos que tenham itens com azul e não tenham itens com a cor
   vermelho, não quero trazer nesta seleção e também não quero trazer
   nesta seleção os pedidos que tenham a cor vermelho mas não tenham a
   cor azul, resumindo, terão que ter registros com a cor azul e também
   registros com a cor vermelha no mesmo pedido.
  
   Obrigado a todos!
  
   Luiz Junior
   Depto-ti Jowanel
   Oracle 10G
  
   [As partes desta mensagem que não continham texto foram removidas]
  
   [As partes desta mensagem que não continham texto foram removidas]
  
  
  
 
  --
  Att,
 
  [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] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Nino
usa INTERSECT



2012/8/22 Milton Bastos Henriquis Jr. miltonbas...@gmail.com

 Também não funciona, Mucio.

 Dessa maneira aí vai retornar todos que tenham 'AZUL' ***OU*** 'VERMELHO'.

 Ele só quer os que tenham OS DOIS, ou seja, azul ***E***  vermelho.


 2012/8/22 Mucio Oliveira omu...@gmail.com

  select '** pedido **'
,p.*,
,'** linhas ***'
,i.*
  from TPEDIDO_VENDAS  P
  ,TITENS_PEDIDO_VENDA I
  where p.ID = i.ID_TPEDIDO_VENDAS
and i.COR_DO_ITEM in ('AZUL','VERMELHO')
 
  Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
  marcio_...@yahoo.com.br escreveu:
 
   **
  
  
   Verdade, se precisar Júnior, inverta a tabela interna com a externa.
  
   -Mensagem original-
  
   De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
  Em
   nome de Milton Bastos Henriquis Jr.
   Enviada em: Wednesday, 22 de August de 2012 14:42
   Para: oracle_br@yahoogrupos.com.br
   Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com
   filtros
  
   diferentes para o mesmo campo?
  
   Marcio, a cor do item está na tabela de itens (filha) e não tabela de
   pedidos (pai).
  
   Junior, não é nada dificil fazer essa query.
   Sabe fazer subselect?
  
   Pena que não tenho nenhuma base disponível aqui pra simular o teu caso
 e
   montar a query pra vc... mas seria mais ou menos isso:
  
   select *
   from TPEDIDO_VENDAS
   where ID IN
   (select ID_TPEDIDO_VENDAS
   from TITENS_PEDIDO_VENDA
   where COR_DO_ITEM = 'AZUL')
   and ID IN
   (select ID_TPEDIDO_VENDAS
   from TITENS_PEDIDO_VENDA
   where COR_DO_ITEM = 'VERMELHO');
  
   Teste aí.
  
   2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br
  
**
   
   
Se eu entendi, vê se esse select ajuda:
   
SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV
   
WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS
   
FROM TITENS_PEDIDO_VENDA TIPV
   
WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)
   
AND TPV.COR_DO_ITEM = ‘AZUL’;
   
De: oracle_br@yahoogrupos.com.br [mailto:
 oracle_br@yahoogrupos.com.br]
Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com
filtros diferentes para o mesmo campo?
   
   
Um Exemplo:
   
/*TABELA TPEDIDO_VENDAS:
*/
*ID*
*NUMERO_DO_**PEDIDO
*
1
1
2
2
3
3
4
4
5
5
   
/*TABELA TITENS_PEDIDO_VENDA:
*/
*ID
* *ID_TPEDIDO_VENDAS
* *ITEM
* *COR_DO_ITEM*
1
1
A
AZUL
2
1
B
VERMELHO
3
1
A
VERDE
4
2
A
VERMELHO
5
3
A
VERDE
6
3
A
VERMELHO
7
4
B
VERMELHO
8
4
A
AZUL
9
4
A
VERMELHO
10
5
A
AZUL
   
Agora que temos as tabelas, preciso selecionar nas duas tabelas os
pedidos que tenham o item com cor azul e com cor vermelho, mas se
tiver somente a cor azul ou se tiver somente a cor vermelho, não
preciso selecioná-lo.
Como ficaria, então, a resposta da minha seleção, baseada nos dados
   acima:
   
*ID_PED_VDA
* *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
* *ITEM
* *COR_DO_ITEM*
1
1
1
A
AZUL
1
1
2
B
VERMELHO
4
4
7
B
VERMELHO
4
4
8
A
AZUL
4
4
9
A
VERMELHO
   
Explicando melhor, preciso selecionar pedidos de vendas que possuem
itens com a cor azul e itens com a cor vermelho. Este campo cor é
preenchido somente com uma cor, então, serão selecionados somente os
pedidos que possuirem itens com a cor azul e também com a cor
 vermelho.
Mas os pedidos que tenham itens com azul e não tenham itens com a cor
vermelho, não quero trazer nesta seleção e também não quero trazer
nesta seleção os pedidos que tenham a cor vermelho mas não tenham a
cor azul, resumindo, terão que ter registros com a cor azul e também
registros com a cor vermelha no mesmo pedido.
   
Obrigado a todos!
   
Luiz Junior
Depto-ti Jowanel
Oracle 10G
   
[As partes desta mensagem que não continham texto foram removidas]
   
[As partes desta mensagem que não continham texto foram removidas]
   
   
   
  
   --
   Att,
  
   [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
   » 

Re: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Mucio Oliveira
select '** pedido **'
  ,p.*,
  ,'** linhas azul ***'
  ,i_a.*
  ,'** linhas vermelho ***'
  ,i_v.*

from TPEDIDO_VENDAS  P


,( select id
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM in ('AZUL') ) i_a

,( select id
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM in ('VERMELHO') ) i_v

where p.id = i_a.id
  and p_id = i_v.id

Em 22 de agosto de 2012 15:11, Nino ninoba...@gmail.com escreveu:

 usa INTERSECT



 2012/8/22 Milton Bastos Henriquis Jr. miltonbas...@gmail.com

  Também não funciona, Mucio.
 
  Dessa maneira aí vai retornar todos que tenham 'AZUL' ***OU***
 'VERMELHO'.
 
  Ele só quer os que tenham OS DOIS, ou seja, azul ***E***  vermelho.
 
 
  2012/8/22 Mucio Oliveira omu...@gmail.com
 
   select '** pedido **'
 ,p.*,
 ,'** linhas ***'
 ,i.*
   from TPEDIDO_VENDAS  P
   ,TITENS_PEDIDO_VENDA I
   where p.ID = i.ID_TPEDIDO_VENDAS
 and i.COR_DO_ITEM in ('AZUL','VERMELHO')
  
   Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
   marcio_...@yahoo.com.br escreveu:
  
**
   
   
Verdade, se precisar Júnior, inverta a tabela interna com a externa.
   
-Mensagem original-
   
De: oracle_br@yahoogrupos.com.br [mailto:
 oracle_br@yahoogrupos.com.br]
   Em
nome de Milton Bastos Henriquis Jr.
Enviada em: Wednesday, 22 de August de 2012 14:42
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com
filtros
   
diferentes para o mesmo campo?
   
Marcio, a cor do item está na tabela de itens (filha) e não tabela de
pedidos (pai).
   
Junior, não é nada dificil fazer essa query.
Sabe fazer subselect?
   
Pena que não tenho nenhuma base disponível aqui pra simular o teu
 caso
  e
montar a query pra vc... mas seria mais ou menos isso:
   
select *
from TPEDIDO_VENDAS
where ID IN
(select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
where COR_DO_ITEM = 'AZUL')
and ID IN
(select ID_TPEDIDO_VENDAS
from TITENS_PEDIDO_VENDA
where COR_DO_ITEM = 'VERMELHO');
   
Teste aí.
   
2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br
   
 **


 Se eu entendi, vê se esse select ajuda:

 SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV

 WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS

 FROM TITENS_PEDIDO_VENDA TIPV

 WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)

 AND TPV.COR_DO_ITEM = ‘AZUL’;

 De: oracle_br@yahoogrupos.com.br [mailto:
  oracle_br@yahoogrupos.com.br]
 Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12
 Para: oracle_br@yahoogrupos.com.br
 Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com
 filtros diferentes para o mesmo campo?


 Um Exemplo:

 /*TABELA TPEDIDO_VENDAS:
 */
 *ID*
 *NUMERO_DO_**PEDIDO
 *
 1
 1
 2
 2
 3
 3
 4
 4
 5
 5

 /*TABELA TITENS_PEDIDO_VENDA:
 */
 *ID
 * *ID_TPEDIDO_VENDAS
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 A
 AZUL
 2
 1
 B
 VERMELHO
 3
 1
 A
 VERDE
 4
 2
 A
 VERMELHO
 5
 3
 A
 VERDE
 6
 3
 A
 VERMELHO
 7
 4
 B
 VERMELHO
 8
 4
 A
 AZUL
 9
 4
 A
 VERMELHO
 10
 5
 A
 AZUL

 Agora que temos as tabelas, preciso selecionar nas duas tabelas os
 pedidos que tenham o item com cor azul e com cor vermelho, mas se
 tiver somente a cor azul ou se tiver somente a cor vermelho, não
 preciso selecioná-lo.
 Como ficaria, então, a resposta da minha seleção, baseada nos dados
acima:

 *ID_PED_VDA
 * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
 * *ITEM
 * *COR_DO_ITEM*
 1
 1
 1
 A
 AZUL
 1
 1
 2
 B
 VERMELHO
 4
 4
 7
 B
 VERMELHO
 4
 4
 8
 A
 AZUL
 4
 4
 9
 A
 VERMELHO

 Explicando melhor, preciso selecionar pedidos de vendas que possuem
 itens com a cor azul e itens com a cor vermelho. Este campo cor é
 preenchido somente com uma cor, então, serão selecionados somente
 os
 pedidos que possuirem itens com a cor azul e também com a cor
  vermelho.
 Mas os pedidos que tenham itens com azul e não tenham itens com a
 cor
 vermelho, não quero trazer nesta seleção e também não quero trazer
 nesta seleção os pedidos que tenham a cor vermelho mas não tenham a
 cor azul, resumindo, terão que ter registros com a cor azul e
 também
 registros com a cor vermelha no mesmo pedido.

 Obrigado a todos!

 Luiz Junior
 Depto-ti Jowanel
 Oracle 10G

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

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

Re: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Milton Bastos Henriquis Jr.
Mucio, sinto muito por ser tão chato, mas vc está errado de novo... rs

Na tabela TITENS_PEDIDO_VENDA vc não deve pegar o id, e sim o
ID_TPEDIDO_VENDAS.
Senão não vai funcionar o JOIN.





2012/8/22 Mucio Oliveira omu...@gmail.com

 select '** pedido **'
   ,p.*,
   ,'** linhas azul ***'
   ,i_a.*
   ,'** linhas vermelho ***'
   ,i_v.*

 from TPEDIDO_VENDAS  P


 ,( select id
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM in ('AZUL') ) i_a

 ,( select id
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM in ('VERMELHO') ) i_v

 where p.id = i_a.id
   and p_id = i_v.id

 Em 22 de agosto de 2012 15:11, Nino ninoba...@gmail.com escreveu:

  usa INTERSECT
 
 
 
  2012/8/22 Milton Bastos Henriquis Jr. miltonbas...@gmail.com
 
   Também não funciona, Mucio.
  
   Dessa maneira aí vai retornar todos que tenham 'AZUL' ***OU***
  'VERMELHO'.
  
   Ele só quer os que tenham OS DOIS, ou seja, azul ***E***  vermelho.
  
  
   2012/8/22 Mucio Oliveira omu...@gmail.com
  
select '** pedido **'
  ,p.*,
  ,'** linhas ***'
  ,i.*
from TPEDIDO_VENDAS  P
,TITENS_PEDIDO_VENDA I
where p.ID = i.ID_TPEDIDO_VENDAS
  and i.COR_DO_ITEM in ('AZUL','VERMELHO')
   
Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
marcio_...@yahoo.com.br escreveu:
   
 **


 Verdade, se precisar Júnior, inverta a tabela interna com a
 externa.

 -Mensagem original-

 De: oracle_br@yahoogrupos.com.br [mailto:
  oracle_br@yahoogrupos.com.br]
Em
 nome de Milton Bastos Henriquis Jr.
 Enviada em: Wednesday, 22 de August de 2012 14:42
 Para: oracle_br@yahoogrupos.com.br
 Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta
 com
 filtros

 diferentes para o mesmo campo?

 Marcio, a cor do item está na tabela de itens (filha) e não tabela
 de
 pedidos (pai).

 Junior, não é nada dificil fazer essa query.
 Sabe fazer subselect?

 Pena que não tenho nenhuma base disponível aqui pra simular o teu
  caso
   e
 montar a query pra vc... mas seria mais ou menos isso:

 select *
 from TPEDIDO_VENDAS
 where ID IN
 (select ID_TPEDIDO_VENDAS
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'AZUL')
 and ID IN
 (select ID_TPEDIDO_VENDAS
 from TITENS_PEDIDO_VENDA
 where COR_DO_ITEM = 'VERMELHO');

 Teste aí.

 2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br

  **
 
 
  Se eu entendi, vê se esse select ajuda:
 
  SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV
 
  WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS
 
  FROM TITENS_PEDIDO_VENDA TIPV
 
  WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)
 
  AND TPV.COR_DO_ITEM = ‘AZUL’;
 
  De: oracle_br@yahoogrupos.com.br [mailto:
   oracle_br@yahoogrupos.com.br]
  Em nome de Junior Enviada em: Wednesday, 22 de August de 2012
 14:12
  Para: oracle_br@yahoogrupos.com.br
  Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com
  filtros diferentes para o mesmo campo?
 
 
  Um Exemplo:
 
  /*TABELA TPEDIDO_VENDAS:
  */
  *ID*
  *NUMERO_DO_**PEDIDO
  *
  1
  1
  2
  2
  3
  3
  4
  4
  5
  5
 
  /*TABELA TITENS_PEDIDO_VENDA:
  */
  *ID
  * *ID_TPEDIDO_VENDAS
  * *ITEM
  * *COR_DO_ITEM*
  1
  1
  A
  AZUL
  2
  1
  B
  VERMELHO
  3
  1
  A
  VERDE
  4
  2
  A
  VERMELHO
  5
  3
  A
  VERDE
  6
  3
  A
  VERMELHO
  7
  4
  B
  VERMELHO
  8
  4
  A
  AZUL
  9
  4
  A
  VERMELHO
  10
  5
  A
  AZUL
 
  Agora que temos as tabelas, preciso selecionar nas duas tabelas
 os
  pedidos que tenham o item com cor azul e com cor vermelho, mas se
  tiver somente a cor azul ou se tiver somente a cor vermelho, não
  preciso selecioná-lo.
  Como ficaria, então, a resposta da minha seleção, baseada nos
 dados
 acima:
 
  *ID_PED_VDA
  * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
  * *ITEM
  * *COR_DO_ITEM*
  1
  1
  1
  A
  AZUL
  1
  1
  2
  B
  VERMELHO
  4
  4
  7
  B
  VERMELHO
  4
  4
  8
  A
  AZUL
  4
  4
  9
  A
  VERMELHO
 
  Explicando melhor, preciso selecionar pedidos de vendas que
 possuem
  itens com a cor azul e itens com a cor vermelho. Este campo cor é
  preenchido somente com uma cor, então, serão selecionados somente
  os
  pedidos que possuirem itens com a cor azul e também com a cor
   vermelho.
  Mas os pedidos que tenham itens com azul e não tenham itens com a
  cor
  vermelho, não quero trazer nesta 

[oracle_br] Re: Recompilar Objetos

2012-08-22 Por tôpico J. Laurindo Chiappa
  Bem, eu não tenho um pronto justamente porque sempre que precisei usei o 
built-in, e como normalmente eu mesmo sou o DBA não tem problema - se o negócio 
é poupar trabalho eu diria Realmente pra vc tentar agendar essa execução com o 
DBA do cliente, mas se não for de forma nenhuma possível vc vai fazer algo tipo 
o script abaixo, selecionando da view de sistema que lista os objetos desejados 
o nome e os metadados necessários e montando uma string com o comando : no caso 
ele é para views, mas sem trabalho nenhum vc o adapta para outros objetos...
  
set term off feedback off verify off pages 0 lines 500 trimspool on head off
spool recomp_views.sql
select 'SPOOL output_recomp.out' from dual
/
select 'ALTER VIEW ' || object_name || ' COMPILE;' 
  from user_objects
 where object_type='VIEW'
   and STATUS  'VALID'
 /
select 'exit' || chr(10) from dual
/
spool off
exit

 == Nada impede de vc dar um up nesse carinha, como por exemplo já encaixar um 
SELECT na USER_ERRORS logo abaixo do comando de recompilação para o objeto, de 
modo que os eventuais erros já fiquem logados, etc  tal, mas seria algo por 
aí

  []s
  
Chiappa


--- Em oracle_br@yahoogrupos.com.br, Samuel Santos samuel.gsantos@... escreveu

 Chiappa,
 
 A questão é que não possuo a conta do SYS e nem mesmo acesso ao S.O do 
 servidor do cliente.
 
 Por isso, pedi a força de sempre de vocês pra 'bolar' esse script e eu poder 
 executar via PL/SQL no SCHEMA no qual temos acesso.
  
 Abs.
 
 
  De: J. Laurindo Chiappa jlchiappa@...
 Para: oracle_br@yahoogrupos.com.br 
 Enviadas: Quarta-feira, 22 de Agosto de 2012 14:56
 Assunto: [oracle_br] Re: Recompilar Objetos
  
 
   
 Nem precisa, o utlrp.sql (que vem junto com o banco e está em 
 $ORACLE_HOME/rdbms/admin já faz isso 
 
 []s
 
 Chiappa
 
 --- Em oracle_br@yahoogrupos.com.br, Samuel Santos samuel.gsantos@ escreveu
 
  Pessoal,
  
  Alguém teria de 'bate pronto', um query, onde eu identifico os objetos que 
  se encontram inválidos(VIEW MATERIALIZADA, VIEW dinâmica, etc...) no meu 
  SCHEMA e consequentemente gerasse o comando para os recompilar?
  
  Desde já agradeço o apoio de todos.
  
  Abs.
  
  [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] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?

2012-08-22 Por tôpico Mucio Oliveira
É Miltão, O baguio é louco mano! agora acabou neuronio...
Parabéns pela criatividade da foto, ficou legal! rs

Em 22 de agosto de 2012 15:22, Milton Bastos Henriquis Jr. 
miltonbas...@gmail.com escreveu:

 Mucio, sinto muito por ser tão chato, mas vc está errado de novo... rs

 Na tabela TITENS_PEDIDO_VENDA vc não deve pegar o id, e sim o
 ID_TPEDIDO_VENDAS.
 Senão não vai funcionar o JOIN.





 2012/8/22 Mucio Oliveira omu...@gmail.com

  select '** pedido **'
,p.*,
,'** linhas azul ***'
,i_a.*
,'** linhas vermelho ***'
,i_v.*
 
  from TPEDIDO_VENDAS  P
 
 
  ,( select id
   from TITENS_PEDIDO_VENDA
   where COR_DO_ITEM in ('AZUL') ) i_a
 
  ,( select id
   from TITENS_PEDIDO_VENDA
   where COR_DO_ITEM in ('VERMELHO') ) i_v
 
  where p.id = i_a.id
and p_id = i_v.id
 
  Em 22 de agosto de 2012 15:11, Nino ninoba...@gmail.com escreveu:
 
   usa INTERSECT
  
  
  
   2012/8/22 Milton Bastos Henriquis Jr. miltonbas...@gmail.com
  
Também não funciona, Mucio.
   
Dessa maneira aí vai retornar todos que tenham 'AZUL' ***OU***
   'VERMELHO'.
   
Ele só quer os que tenham OS DOIS, ou seja, azul ***E***  vermelho.
   
   
2012/8/22 Mucio Oliveira omu...@gmail.com
   
 select '** pedido **'
   ,p.*,
   ,'** linhas ***'
   ,i.*
 from TPEDIDO_VENDAS  P
 ,TITENS_PEDIDO_VENDA I
 where p.ID = i.ID_TPEDIDO_VENDAS
   and i.COR_DO_ITEM in ('AZUL','VERMELHO')

 Em 22 de agosto de 2012 14:44, Márcio - Grupos Oracle 
 marcio_...@yahoo.com.br escreveu:

  **
 
 
  Verdade, se precisar Júnior, inverta a tabela interna com a
  externa.
 
  -Mensagem original-
 
  De: oracle_br@yahoogrupos.com.br [mailto:
   oracle_br@yahoogrupos.com.br]
 Em
  nome de Milton Bastos Henriquis Jr.
  Enviada em: Wednesday, 22 de August de 2012 14:42
  Para: oracle_br@yahoogrupos.com.br
  Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta
  com
  filtros
 
  diferentes para o mesmo campo?
 
  Marcio, a cor do item está na tabela de itens (filha) e não
 tabela
  de
  pedidos (pai).
 
  Junior, não é nada dificil fazer essa query.
  Sabe fazer subselect?
 
  Pena que não tenho nenhuma base disponível aqui pra simular o teu
   caso
e
  montar a query pra vc... mas seria mais ou menos isso:
 
  select *
  from TPEDIDO_VENDAS
  where ID IN
  (select ID_TPEDIDO_VENDAS
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM = 'AZUL')
  and ID IN
  (select ID_TPEDIDO_VENDAS
  from TITENS_PEDIDO_VENDA
  where COR_DO_ITEM = 'VERMELHO');
 
  Teste aí.
 
  2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br
 
   **
  
  
   Se eu entendi, vê se esse select ajuda:
  
   SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV
  
   WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS
  
   FROM TITENS_PEDIDO_VENDA TIPV
  
   WHERE TPV.COR_DO_ITEM = ‘VERMELHO’)
  
   AND TPV.COR_DO_ITEM = ‘AZUL’;
  
   De: oracle_br@yahoogrupos.com.br [mailto:
oracle_br@yahoogrupos.com.br]
   Em nome de Junior Enviada em: Wednesday, 22 de August de 2012
  14:12
   Para: oracle_br@yahoogrupos.com.br
   Assunto: [oracle_br] Essa é difici!!!Como fazer consulta
 com
   filtros diferentes para o mesmo campo?
  
  
   Um Exemplo:
  
   /*TABELA TPEDIDO_VENDAS:
   */
   *ID*
   *NUMERO_DO_**PEDIDO
   *
   1
   1
   2
   2
   3
   3
   4
   4
   5
   5
  
   /*TABELA TITENS_PEDIDO_VENDA:
   */
   *ID
   * *ID_TPEDIDO_VENDAS
   * *ITEM
   * *COR_DO_ITEM*
   1
   1
   A
   AZUL
   2
   1
   B
   VERMELHO
   3
   1
   A
   VERDE
   4
   2
   A
   VERMELHO
   5
   3
   A
   VERDE
   6
   3
   A
   VERMELHO
   7
   4
   B
   VERMELHO
   8
   4
   A
   AZUL
   9
   4
   A
   VERMELHO
   10
   5
   A
   AZUL
  
   Agora que temos as tabelas, preciso selecionar nas duas tabelas
  os
   pedidos que tenham o item com cor azul e com cor vermelho, mas
 se
   tiver somente a cor azul ou se tiver somente a cor vermelho,
 não
   preciso selecioná-lo.
   Como ficaria, então, a resposta da minha seleção, baseada nos
  dados
  acima:
  
   *ID_PED_VDA
   * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA
   * *ITEM
   * *COR_DO_ITEM*
   1
   1
   1
   A
   AZUL
   1
   1
   2
   B
   VERMELHO
   4
   4
   7
   B
   VERMELHO
   4
   4
   8
   A
   AZUL
   4
   4
   9
   A
   

[oracle_br] Re: duvidas sobre language

2012-08-22 Por tôpico J. Laurindo Chiappa
  Bem, para saber o necessário sobre os params de NLS, vc vai ter que GOTO 
manuais Oracle de Globalization , mas o resumo do resumo é : no RDBMS Oracle, 
nós basicamente temos 3 itens de localização controláveis, a Linguagem (língua 
em que as msgs serão exibidas), o Território (o país/região do mundo a ser 
condiderada como 'local', para símbolos monetários e unidades, isso varia pra 
cada um) e o Characterset (o conjunto de codificação de caracteres : como vc 
deve saber, a tabela ASCII originalmente foi criada nos EUA e (entre outros 
motivos, também por limitações técnicas) só previa códigos para letras (sem 
acentos), números arábicos de 0 a 9 e alguns poucos sinais de pontuação usados 
no Inglês, então com a Globalização foi necessário adaptar e incluir 
caracteres, e como cada região (ou mesmo país) usa um conjunto diferente, 
vários arranjos - CODEPAGES - foram surgindo) 
Sobre a variável NLS_LANG : ela seta o valor que a sessão a conectar no 
database vai usar (pois o que está configurado no database, que vc descobre 
fazendo um select * from NLS_DATABASE_PARAMETERS; ) é o default, a ser aplicado 
apenas se a sessão não setar nada, e nesses manuais de Globalization vc vai 
descobrir que a variável pode conter as partes configuráveis : então, ao se 
setar NLS_LANG para AMERICAN_AMERICA.WE8ISO8859P1 vc está dizendo pro Oracle 
client que a sessão vai utilizar inglês Americano, notação monetária Aemricana 
e caracteres ASCII extras na codepage WE8ISO8859P1, é isso...

  Sendo assim , Não Faz muito Sentido vc ter um cliente de backup que configura 
um characterset X e uma Aplicação que configura um outro  Y : ambos deveriam 
estar usando o do database Talvez o que aconteceu aí é que , cfrme 
http://levipereira.wordpress.com/2010/11/20/difference-between-we8mswin1252-and-we8iso8859p1-characterset/
 nos lembra, antigamente o characterset default no Oracle era o WE8IOS8895P1, 
aí quando o pessoal montou o script de backup tascou esse como o setting da 
NLS_LANG : hoje em dia o default é o WE8MSWIN1252 , provavelmente o seu 
database deve estar usando esse, mas já que (tal como mostrado no link acima) 
quase todos os códigos para caracteres acentuados batem nos dois 
charactersets, o valor de WE8IOS8895P1 funciona (para caracteres em pt-br), 
então ninguém se preocupou em corrigir
  
[]s

  Chiappa


--- Em oracle_br@yahoogrupos.com.br, Paulo Couto paulopcto2002@... escreveu

 Amigos, tenho um script de backup de banco montado por terceiro, que seta a 
 variavel NLS_LANG para SET NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1  antes de 
 iniciar um EXPDP.
  
 Já uma outra empresa terceira instalou um sistema e nas estações tenho que 
 instalar o client do oracle e setar a variavel NSL_LANG no registro do 
 Windows paraAMERICAN_AMERICA.WE8MSWIN1252
  
 Já o parametro NLS_LANGUAGE do meu banco 10.2.0.4 (windows) está setado com o 
 valor AMERICA.
  
  
 Gostaria de entender melhor este parâmetro e qual o problema de uma aplicação 
 usar um valor, já um backup usar outro, etc...
  
 Abs,
  
 Paulo.
 
 [As partes desta mensagem que não continham texto foram removidas]