Criar Subselect

29/01/2013

0

Boa noite pessoal,

como faço para criar um SubSelect,

entre duas tabelas ?
Anderson Mendes

Anderson Mendes

Responder

Post mais votado

30/01/2013

Então, amigo, mas nos mostre a estrutura das tabelas e o que você precisa. Assim por cima fica muito difícil.

Joel Rodrigues

Joel Rodrigues
Responder

Mais Posts

29/01/2013

Joel Rodrigues

Opa, qual seria a necessidade e a estrutura das tabelas?
Assim facilita para vermos aí como vai ser a estrutura dessa consulta.
Responder

30/01/2013

Anderson Mendes

Joel,

a necessidade seria trazer o maior

o valor dentre duas tabelas que estou tentando

fazer um subselect.
Responder

31/01/2013

Alex Lekao

Oi Anderson, Boa tarde!!!

Como o Joel disse, sem mais detalhes fica difícil lhe oferecer algo que seja eficiente, mas vou usar um exemplo de data de venda de cliente, não sei se ficara correto, pode ser que tenha erro na estrutura pq não testei, mas vamos la.

Select codcli,nome,(select max(cb.datavenda) from cabvenda as cb where cb.datavenda between '01.01.2012' and '31.12.2012' and cb.codcli = cl.codcli) from cliente.

Espero que iste te de um norte.

como disse não testes então pode conter algum erro.

Diga se conseguiu resolver e como foi.

Abraco.

Alex - Lekao
Responder

31/01/2013

Anderson Mendes

Então Alex,

pela sua estrutura não consegui resolver.

Tenho uma tabela para cadastro de endereço onde

preciso saber o maior percentual do atributo Perc_End,

daquele determinado cliente.

O select que estou realizando esta da seguinte forma abaixo:

SELECT CPF, LOGRADOURO, PERC_END FROM CLIENTE
WHERE CPF = '000000000000' AND SELECT MAX(PERC_END) FROM ENDERECO 


Isto esta me gerando erro. Como posso proceder para resolver ?
Responder

31/01/2013

Joel Rodrigues

Seria isso:

SELECT CPF, LOGRADOURO, PERC_END FROM CLIENTE
WHERE CPF = '000000000000' AND PERC_END = (SELECT MAX(PERC_END) FROM ENDERECO)


Nesse caso você seleciona os campos da tabela cliente cujo registro possuir o campo CPF igual a '00000000000' e o campo PERC_END for igual ao maior valor de PERC_END na tabela de endereços.
Responder

01/02/2013

Ricardo Araujo

Responder

01/02/2013

Ricardo Araujo

desconsidere o mensagem Anterior,

Tem muito coisa no net, da uma olhada neste link abaixo:

https://www.devmedia.com.br/conceitos-e-exemplos-praticos-union-e-subquery-sql-server-2008-parte-1/19166

Responder

04/02/2013

Anderson Mendes

Valeu galera,

vocês são demais.

A dúvida foi sanada. Thanks!
Responder

06/04/2016

Mateus Serafim

Seria isso:

SELECT CPF, LOGRADOURO, PERC_END FROM CLIENTE
WHERE CPF = '000000000000' AND PERC_END = (SELECT MAX(PERC_END) FROM ENDERECO)


Nesse caso você seleciona os campos da tabela cliente cujo registro possuir o campo CPF igual a '00000000000' e o campo PERC_END for igual ao maior valor de PERC_END na tabela de endereços.





Poderia me ajudar em um caso parecido?
Responder

06/04/2016

Marcos P

Parecido, mas não igual... certo ?

Descreva melhor os detalhes do seu caso e porque você não conseguiu resolver com as dicas desse post...
Responder

06/04/2016

Alex Lekao

talves possa ser mais interessante abrir um novo post. rssrsr
Responder

06/04/2016

Mateus Serafim

Opa amigo, obrigado!


Mas consegui, desta forma


RECIBO RECISAO


SELECT DISTINCT

F.CODCOLIGADA,
'1' AS TIPO_COLABORADOR,
F.CHAPA,
F.DTPAGTO,
' 'AS TIPO_EVENTO,
' 'AS CODIFO_TABELA_EVENTO,
F.CODEVENTO,
F.REF,
F.VALOR


FROM PFFINANC F, PFUNC P
--LEFT OUTER JOIN PFUNC P ON F.CODCOLIGADA=P.CODCOLIGADA AND F.CHAPA=P.CHAPA

WHERE F.CODCOLIGADA='1'
--AND F.CHAPA = '01094'
AND P.CODCOLIGADA = F.CODCOLIGADA
AND P.CHAPA = F.CHAPA
AND F.NROPERIODO = 2
ORDER BY F.CHAPA DESC
Responder

06/04/2016

Mateus Serafim

estava fazendo tempestade em copo d'agua.....
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar