SELECT COM SUBQUERY

05/02/2014

0

Bom Dia Pessoal,

Estou fazendo um SELECT em duas tabelas para depois fazer um INSERT em outra tabela.
Nesta tabela que vou fazer o INSERT tenho dois campos QUANTIDADE_MAQUINA1, PESO_MAQUINA1, QUANTIDADE_MAQUINA2, PESO_MAQUINA2.
Mas no meu SELECT não estou conseguindo trazer essas informações com SUBQUERY.

SELECT campo1,campo2,campo3,campo4,
(SELECT Quantidade FROM refugoOP WHERE refugoOP.Maquina = 'OND' ) AS QTD_OND,
(SELECT Peso FROM refugoOP WHERE refugoOP.Peso = 'OND' ) AS PESO_OND,


FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.CampoEmComum = Tabela2.CampoEmComum


GROUP BY campo1,campo2,campo3,campo4
ORDER BY campo1 DESC

Está me retornando o seguinte erro:
A subconsulta retornou mais de 1 valor. Isso não é permitido quando a subconsulta segue um =, !=, <, <= , >, >= ou quando ela é usada como uma expressão.

Qual outra forma posso trazer essas informaçõe separadas?

Obrigado.

Marcio Morando

Marcio Morando

Responder

Posts

05/02/2014

Leandro Chiodini

Isso ocorre pq em um dos dois subselects
esta retornando mais de um registro.
ou nos dois.

Pode ser que voce tenha na tabela refugoOP
mais de um registro com maquina = 'OND'
ou refugoOP = 'OND'


Faz um select simples para ver se traz mais de um registro


SELECT Quantidade FROM refugoOP WHERE refugoOP.Maquina = 'OND'  /Veja se traz mais de um registro

SELECT Peso FROM refugoOP WHERE refugoOP.Peso = 'OND'  /Veja se traz mais de um registro

Responder

05/02/2014

Marcio Morando

Bom Dia,

Sim, está trazendo mais de um registro.

Tentei fazer com CASE WHEN e deu certo!

Muito Obrigado.
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