Consulta SQL - select

SQL Server

16/04/2007

Estou precisando fazer uma consulta dentro de outra consulta e não estou conseguindo.

Exemplo: na minha tabela de VENDAS eu tenho CODCLI, DATAVENDA e NUMVENDA

Preciso saber todos os clientes que fizeram compras em janeiro de 2006 e não voltaram mais desde o inicio de 2007 até hoje.

Todos os clientes que compraram em janeiro de 2006:
select CODCLI from VENDAS
where DATAVENDA between ´2006-jan-01´ and ´2006-jan-31´


Todos os clientes que compraram de janeiro de 2007 até hoje:
select CODCLI from VENDAS
where DATAVENDA between ´2007-jan-01´ and ´2007-apr-16´


Como eu faço para saber quais clientes que estão na primeira consulta e não estão na segunda? Não consigo montar um subselect que faça isso. Obs.: Estou utilizando SQLServer 2000.

Desde já agradeço.


Dgsfilho

Dgsfilho

Curtidas 0

Respostas

Wagnerbianchi

Wagnerbianchi

16/04/2007

Faça uma subconsulta no WHERE!


GOSTEI 0
Psergio.p

Psergio.p

16/04/2007

SELECT CODCLI FROM VENDAS WHERE
DATAVENDAS BETWEEN ´2006-JAN-01´ AND ´2006-JAN-31´
AND CODCLI NOT IN(SELECT DISTINCT CODCLI FROM VENDAS WHERE DATAVENDAS BETWEEN ´2007-JAN-01´ AND ´2007-APR-16´)

Acho que é isso, tenta aí


GOSTEI 0
POSTAR