T-SQL Выберите учетные записи без активности - PullRequest
2 голосов
/ 20 февраля 2012

У меня есть эта таблица

ID  InvoiceNo  Created_date
--  ---------  ------------
1   123        1/1/2009
1   234        1/1/2010
1   2304       2/1/2010
1   av245      3/1/2011
1   45wd3      4/1/2011
2   345        1/1/2010
2   4w5        2/1/2010

Я пытаюсь выбрать идентификатор, в котором не было активности с 01.11.2010.поэтому мои результаты должны показывать только ID 2.

Я использовал EXISTS, а не EXIST, но он все еще показывает ID 1. Любая помощь приветствуется.

Ответы [ 2 ]

2 голосов
/ 20 февраля 2012

Не оптимизировано для производительности, но я бы просто сделал что-то вроде этого: быстрое и грязное оповещение

select distinct q.id from (select id, max(created_date) as latestdate from TABLENAME group by id) q where q.latestdate <= '2010-11-01'
0 голосов
/ 20 февраля 2012

в оракуле я мог бы написать что-то вроде этого:

select id from mytable
MINUS
SELECT id from mytable where created_dt > '2010-11-01'

для использования NOT IN:

select * from mytable 
where id not in ( select id from mytable where created_dt > '2010-11-01' )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...