Vid. 2009 Postado 27 de Dezembro de 2012 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Denunciar Compartilhar Postado 27 de Dezembro de 2012 (editado) Estou com está consulta que retorna os clientes sem movimentações num período de 6 meses , queria que a consulta retorna -se somente o CODCFO. Desde já obrigado pela ajuda. SELECT CODCFO, DATEDIFF(DAY,DATA, GETDATE())TEMPO FROM (SELECT A.CODCFO, NOME, MAX(A.DATAEMISSAO)DATA FROM TMOV A (NOLOCK) INNER JOIN FCFO B ON A.CODCFO = B.CODCFO AND A.CODCOLIGADA = B.CODCOLIGADA INNER JOIN GMUNICIPIO G ON G.CODMUNICIPIO = B.CODMUNICIPIO AND G.CODETDMUNICIPIO = B.CODETD WHERE A.CODCOLIGADA = '1' AND CODTMV IN ('2.2.01','2.2.02','2.2.07','2.2.30','2.2.37','2.2.38','2.2.40') AND A.CODCFO NOT LIKE 'f_%' AND B.CFOIMOB ='0' AND G.NOMEMUNICIPIO LIKE 'dores_%' AND STATUS <> 'C' GROUP BY A.CODCFO, NOME)A WHERE DATEDIFF(DAY,DATA, GETDATE()) >= 180 AND NOT EXISTS (SELECT CODCFO, DATAEXTRA1, STATUS, CODTMV FROM TMOV (NOLOCK) WHERE CODCOLIGADA ='1' AND CODTMV IN ('2.2.01','2.2.02','2.2.07','2.2.30','2.2.37','2.2.38','2.2.40') AND STATUS <> 'C'AND TMOV.DATAEMISSAO >= GETDATE() AND CODCFO = A.CODCFO) Editado 27 de Dezembro de 2012 por Vid. 2009 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
João Rodrigo Postado 27 de Dezembro de 2012 Tópicos Que Criei: 6 Tópicos/Dia: 0.00 Meu Conteúdo: 290 Conteúdo/Dia: 0.06 Reputação: 17 Pontos/Conquistas: 1.523 Conteúdo Resolvido: 0 Dias Ganho: 12 Status: Offline Denunciar Compartilhar Postado 27 de Dezembro de 2012 Bom dia, Talvez uma pesquisa mais simples resolva o seu caso: SELECT CODCFO FROM FCFO WHERE CODCFO NOT IN (SELECT CODCFO FROM TMOV WHERE DATAEMISSAO>=dateadd(month,(-6),getdate()) AND CODTMV IN ('2.2.01','2.2.02','2.2.07','2.2.30','2.2.37','2.2.38','2.2.40') AND STATUS <> 'C' ) AND fcfo.ATIVO = 1 ou: SELECT DISTINCT C.CODCFO FROM FCFO C LEFT OUTER JOIN (SELECT CODCOLCFO, CODCFO FROM TMOV WHERE DATAEMISSAO>=dateadd(month,(-6),getdate()) AND CODTMV IN ('2.2.01','2.2.02','2.2.07','2.2.30','2.2.37','2.2.38','2.2.40') AND STATUS <> 'C' ) M ON M.CODCOLCFO = C.CODCOLIGADA AND M.CODCFO = C.CODCFO WHERE C.ATIVO = 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vid. 2009 Postado 27 de Dezembro de 2012 Tópicos Que Criei: 30 Tópicos/Dia: 0.01 Meu Conteúdo: 103 Conteúdo/Dia: 0.02 Reputação: 2 Pontos/Conquistas: 812 Conteúdo Resolvido: 0 Dias Ganho: 2 Status: Offline Autor Denunciar Compartilhar Postado 27 de Dezembro de 2012 Muito Obrigado. Era isso mesmo que eu precisava. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.