Re: [oracle_br] Dúvidas Consulta SQL

2006-08-15 Por tôpico Clayton
Experimente fazer um SQL similar ao mostrado abaixo:



select S.secretaria, tbl1.totalChamada, tbl2.totalServico
from tabelaSecretaria S,
(
  select secretaria, sum(vl_chamada) totalChamada
  from chamada
  group by secretaria
) tbl1,
(
  select secretaria, sum(vl_servico) totalServico
 from servico
 group by secretaria
) tbl2
where s.secretaria = tbl1.secretaria
and s.secretaria = tbl2.secretaria
and tbl1.secretaria = tbl2.secretaria



On Mon, 14 Aug 2006 16:57:40 + (GMT), Wilian Domingues - Analista de 
[EMAIL PROTECTED] escreveu:

 De: Wilian Domingues - Analista de [EMAIL PROTECTED]
 Data: Mon, 14 Aug 2006 16:57:40 + (GMT)
 Para: oracle_br@yahoogrupos.com.br, [EMAIL PROTECTED],  
 delphi-br@yahoogrupos.com.br, [EMAIL PROTECTED]
 Assunto: [oracle_br] Dúvidas Consulta SQL
 
 
 Boa Tarde PessoALL,

   Estou com dificuldades em uma consulta e vou tentar explicar para vcs a 
 minha situação:
 A minha consulta é a seguinte, quero consultar as secretarias, somando as 
 colunas vlr_chamada e vlr_servico, sendo que na coluna vlr_chamada está na 
 tabela chamada e a coluna vlr_servico esta na tabela serviço. Com isso eu 
 posso ter um número maior de chamadas do que serviços e vice-versa. Um 
 exemplo, com um número maior de chamadas do que serviços:
 
 
 | secretaria | vlr_chamada | vlr_servico |
 
 |1  |   5,50   | 10,00|
 
 |1  |   0,50   | |
 
 
 No exemplo que eu colequei acima, tenho a situação de ter mais chamadas do 
 que serviços, só que com a minha consulta quando eu a realizo, se o número de 
 serviços é menor do que chamadas, ele repete o valor do serviço para as 
 linhas a mais  de chamada, ficando assim:
 
 
 | secretaria | vlr_chamada | vlr_servico |
 
 |1  |   5,50   | 10,00|
 
 |1  |   0,50   | 10,00*   |
 
 
   * Valor repetido.
   
 Só que neste caso o segundo valor de serviço não existe, alterando desta 
 forma o resultado da consulta quando eu mando somar os valores de serviços e 
 chamadas. Na situação que eu tenho agora, o resultado da somas ficaria assim:
 
 - secretaria: 1
 - vlr_chamada: 6,00
 - vlr_servico: 20,00
 
 Sendo que o resultado correto seria:
 - secretaria: 1
 - vlr_chamada: 6,00
 - vlr_servico: 10,00
 
 Estou pedindo ajuda para vcs... pq ja tentei todos os meios que eu conheço, 
 caso tenham tempo para me ajudar ficaria muito grato.
 Wilian Domingues.
 
  __
 Fale com seus amigos  de graça com o novo Yahoo! Messenger 
 http://br.messenger.yahoo.com/ 
 
 [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

 




RE: [oracle_br] Dúvidas Consulta SQL

2006-08-14 Por tôpico Alfonso, Carlos Eduardo
Ola Willian

Veja se este exemplo ajuda.

Create Table Servico
(Id Number(2)
, Valor Number(5,2));

Insert Into Servico Values(1,10);

Insert Into Servico Values(2,6);

Create Table Chamada
(Id Number(2)
, Valor Number(5,2));

Insert Into Chamada Values(1, 5.5);

Insert Into Chamada Values(1, 0.5);

Create Table Secretaria
(Id Number(02)
,Id_Chamada Number(02)
, Id_Servico Number(02)
);

Insert Into Secretaria Values(1,1,1);

Insert Into Secretaria Values(1,2,Null);

Select Sec.Id
 , Sum(Cha.Valor)
 , Sum(Ser.Valor) 
 From Chamada Cha
, Servico Ser
, Secretaria Sec
 Where Cha.Id(+) = Sec.Id_Chamada
  And  Ser.Id(+) = Sec.Id_Servico
Group By Sec.Id;


Boa sorte 

-Original Message-
From: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Wilian Domingues - Analista de
Sent: segunda-feira, 14 de agosto de 2006 13:58
To: oracle_br@yahoogrupos.com.br; [EMAIL PROTECTED]; 
delphi-br@yahoogrupos.com.br; [EMAIL PROTECTED]
Subject: [oracle_br] Dúvidas Consulta SQL

Boa Tarde PessoALL,
   
  Estou com dificuldades em uma consulta e vou tentar explicar para vcs a minha 
situação:
A minha consulta é a seguinte, quero consultar as secretarias, somando as 
colunas vlr_chamada e vlr_servico, sendo que na coluna vlr_chamada está na 
tabela chamada e a coluna vlr_servico esta na tabela serviço. Com isso eu posso 
ter um número maior de chamadas do que serviços e vice-versa. Um exemplo, com 
um número maior de chamadas do que serviços:


| secretaria | vlr_chamada | vlr_servico |

|1  |   5,50   | 10,00|

|1  |   0,50   | |


No exemplo que eu colequei acima, tenho a situação de ter mais chamadas do que 
serviços, só que com a minha consulta quando eu a realizo, se o número de 
serviços é menor do que chamadas, ele repete o valor do serviço para as linhas 
a mais  de chamada, ficando assim:


| secretaria | vlr_chamada | vlr_servico |

|1  |   5,50   | 10,00|

|1  |   0,50   | 10,00*   |


  * Valor repetido.
  
Só que neste caso o segundo valor de serviço não existe, alterando desta forma 
o resultado da consulta quando eu mando somar os valores de serviços e 
chamadas. Na situação que eu tenho agora, o resultado da somas ficaria assim:

- secretaria: 1
- vlr_chamada: 6,00
- vlr_servico: 20,00

Sendo que o resultado correto seria:
- secretaria: 1
- vlr_chamada: 6,00
- vlr_servico: 10,00

Estou pedindo ajuda para vcs... pq ja tentei todos os meios que eu conheço, 
caso tenham tempo para me ajudar ficaria muito grato.
Wilian Domingues.

 __
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[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




 




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