Хитрый фильтр по величине суммы

Statyan
Дата: 26.01.2009 17:21:51
Доброго дня всем!
Интересует есть ли возможность реализовать фильтр в запросе, который отсекал бы ненужные записи, если сумма по определенному полю меньше определенного значения?

Допустим, таблица вида tbl_Test(ID, Order, Value), где Order - порядок для сортировки, Value - int значение. Наполнение выглядит так:

ID Order Value
a 1 20
b 2 70
c 3 50
d 4 40
Хочу получить выборку, в которую попадут записи, упорядоченные по Order, где Order между 1 и 4 и сумма по записям меньше 100.
Возможно ли реализовать такое в запросе? Если возможно, то как?
Большое спасибо заранее.
Паганель
Дата: 26.01.2009 17:30:41
Glory
Дата: 26.01.2009 17:30:41
Нарастающий итог что ли ?
oguest
Дата: 26.01.2009 17:36:32
create table tbl (id varchar(10), ord int identity(1,1), val int)
go

insert into tbl(id,val)
select 'a',20
union
select 'b',70
union
select 'c',50
union
select 'd',40
go

select  * from tbl 
where ord between 1 and 4 and (select sum(val)  from tbl t2 where t2.ord<=tbl.ord) <= 100
order by ord

Это нужно, что ли?
Statyan
Дата: 26.01.2009 17:44:06
О, огромное спасибо! Ссылку изучаю, запрос работает. Видимо, конец рабочего дня сказывается, раз сам не осилил. Еще раз спасибо