Ir para conteúdo

POWERED BY:

Arquivado

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

KUROL3

problemas com group by

Recommended Posts

SELECT
											CADCTR5.CtrParcBenCod,
											CADCTR5.CtrObj as obejto, 
											CADIMO.ImoCod					as id, 
											MAX(CADIMO.ImoEnd)				as endereco,
											MAX(CADIMO.ImoEndNum)				as numero,
											MAX(CADIMO.ImoEndCompl)				as complemento,
											MAX(CADIMO.SitCod)					as codigo_situacao,
											(SELECT CAST(count(*) as int) FROM CADCTR12 WHERE MAX(CADIMO.ImoCod) = CADCTR12.ImoCod) as total_ou_codigo
										FROM
											CADCTR5
											INNER JOIN CADCTR12 ON (CADCTR5.CtrObj = CADCTR12.CtrObj AND CADCTR5.CtrCod = CADCTR12.CtrCod AND CADCTR5.CtrDV = CADCTR12.CtrDV)
											INNER JOIN CADIMO ON (CADIMO.ImoCod = CADCTR12.ImoCod)
										WHERE 
											CADCTR5.CtrParcBenCod = '14'
										GROUP BY
											/* agrupa pelos campos abaixo a pacela nao pode entrar.. */
											CADCTR5.CtrParcBenCod, CADCTR5.CtrObj, CADCTR5.CtrCod, CADIMO.ImoCod

 

 

 

pq não agrupa pelo ImoCod?

Compartilhar este post


Link para o post
Compartilhar em outros sites

CADIMO.ImoCod as id, MAX(CADIMO.ImoEnd) as endereco,

 

O mesmo campo está no agrupamento e na função de agrupamento (Max), por que ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu coloquei o max lá para nao ficar dano o seguinte erro (tirei do imoend

 

Msg 8120, Level 16, State 1, Line 1

A coluna 'CADIMO.ImoEnd' é inválida na lista de seleção porque não está contida em uma função agregada nem na cláusula GROUP BY.

 

 

mesmo fazendo assi não da certo

 

SELECT                                                                                        
CADCTR5.CtrParcBenCod,                                                                                       
CADCTR5.CtrObj as obejto,                                                                                         
CADIMO.ImoCod 
FROM                                                                                        
CADCTR5                                                                                        
INNER JOIN CADCTR12 ON (CADCTR5.CtrObj = CADCTR12.CtrObj AND CADCTR5.CtrCod = CADCTR12.CtrCod AND CADCTR5.CtrDV = CADCTR12.CtrDV)  
INNER JOIN CADIMO ON (CADIMO.ImoCod = CADCTR12.ImoCod)                                                                               
WHERE                                                                                         
CADCTR5.CtrParcBenCod = '14'                                                                                
GROUP BY                                                                                        
/* agrupa pelos campos abaixo a pacela nao pode entrar.. */                                                                                        
CADCTR5.CtrParcBenCod, CADCTR5.CtrObj, CADCTR5.CtrCod, CADIMO.ImoCod
quando existe mais de um contrato na CADCTR5 fica em duplicidade de imovel....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente o mx que eu falei no primeiro exemplo.

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.