|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Serguei Rozovik 2:5020/400 06 Mar 2001 19:02:44 To : All Subject : Re: Подскажите про Select -------------------------------------------------------------------------------- Hi Fatuev Yury! "Fatuev Yury" <Fatuev.Yury@f1.n5036.z2.fidonet.org> wrote in message news:2386137405@news.lipetsk.su... > Hадо средствами SQL срочно решить след. задачу - выбрать из базы все записи, > сумма определенного значения в которых меньше заданного значения. Т.е. есть > база - > k_zap Summa > 1 1 > 2 3 > 3 2 > 5 4 > > Hадо выбрать те записи, упорядоченные по k_zap, сумма поля в которых меньше > или равна, например, 7 (1,2,3-я записи: 1+3+2 = 6). > Очень хочется сделать это через один Select... Задача, конечно, для больного воображения. Лучше нормализовать базу, но решение вобщем то имеется и довольно симпатичное. Допустим описанную выше таблицу зовут t1, тогда описанная задачка решается так: select * from t1 where exists (select sum(summa) from t1 t where t.k_zap<=t1.k_zap having sum(summa)<=7) зы: для дольших таблиц и больших пороговых значений будет работать медленно, почему - догадайся сам. -- My best regards. Serguei. <rozovik@tut.by> Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Talk.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/648820d15426.html, оценка из 5, голосов 10
|