Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mistério

Contar uma Coluna

Recommended Posts

Tenho a seguinte select

set dateformat dmy
SELECT DISTINCT D.Fantasia_Dealer, TF.Dt_Importacao, TF.Id_Importacao, TF.ID_Dealer, TFS.Desc_FirmOrderStatus, TF.ID_FirmOrderStatus
from TFirmOrder TF
INNER JOIN TDealer D on (D.Id_Dealer = TF.Id_Dealer)
INNER JOIN TFirmOrderStatus TFS on (TFS.ID_FirmOrderStatus = TF.ID_FirmOrderStatus),
(SELECT count(TF.ID_FirmOrderStatus) FROM TFirmOrder TF WHERE TF.ID_Dealer = D.ID_Dealer and TF.ID_FirmOrderStatus ='2' ) as SELECIONADOS
Where TF.Id_Importacao = '1'
order by D.Fantasia_Dealer

E o código deu erro: The column prefix 'D' does not match with a table name or alias name used in the query.

 

O que devo fazer ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você não pode repetir alias, mesmo que seja da mesma tabela, você está usando TF duas vezes

renomeie o alias em algum dos dois casos e tente de novo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudei para:

set dateformat dmy
SELECT DISTINCT D.Fantasia_Dealer, TF.Dt_Importacao, TF.Id_Importacao, D.ID_Dealer, TF.ID_Dealer, TFS.Desc_FirmOrderStatus, TF.ID_FirmOrderStatus
from TFirmOrder TF
INNER JOIN TDealer D on (D.Id_Dealer = TF.Id_Dealer)
INNER JOIN TFirmOrderStatus TFS on (TFS.ID_FirmOrderStatus = TF.ID_FirmOrderStatus),
(SELECT count(TFO.ID_FirmOrderStatus) FROM TFirmOrder TFO WHERE TFO.ID_Dealer = D.ID_Dealer and TFO.ID_FirmOrderStatus ='2' ) as SELECIONADOS
Where TF.Id_Importacao = '1'
order by D.Fantasia_Dealer

E está dando o erro: The column prefix 'D' does not match with a table name or alias name used in the query, ou seja, A coluna prefixo 'D' não corresponde a uma tabela nome ou apelido nome utilizado na consulta.

 

O que fazer ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

(SELECT count(TFO.ID_FirmOrderStatus) FROM TFirmOrder TFO WHERE TFO.ID_Dealer = D.ID_Dealer and TFO.ID_FirmOrderStatus ='2' ) as SELECIONADOS

para quê você usa esse comando? não usa para relacionar com nenhuma tabela, não usa para no select principal para listar qualquer valor

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.