Просмотр полной версии : Помогите с SQL запросом
Ребят помогите плиз.
В общем есть таблица допустим "хрень"
В ней список значений
Onecolumn:twocolumn:threecolumn
труляля:qweq:150
траляяк:sdfsfff:100
триляля:dfgdgd:300
Собственно вопрос. Нужно выбрать значения начиная с первого чтобы сумма threecolumn достигла 250
пробовал так
select *,sum(threecolumn) from хрень where sum(threecolumn)=250
Но это неправильно ((.
бери все, а потом считай. в MySQL просто так не получится.
В MSSQL можно, но через жопу )
spider-intruder
16.12.2009, 11:31
Думается мне без процедуры не обойтись. Циклы смотри. Выводи в каждой итерации по одной строке и накапливай в цикле сумму 3й колонки.
Одним запросом, имхо, не обойтись.
Проще всего сделать суммирование в скрипте.
Или попробовать написать мега-запрос с использованием LIMIT и COUNT(*)+1
SELECT Onecolumn from хрень
group by Onecolumn
HAVING SUM(threecolumn) = 250
как то так. по крайней мере у меня в оракле работает для моих таблиц.
SELECT Onecolumn from хрень
group by Onecolumn
HAVING SUM(threecolumn) = 250
как то так. по крайней мере у меня в оракле работает для моих таблиц.
group by не катит ((( разные значения в onecolumn.
лан. придется делать как посоветовал spider-intruder
ну дык и что, что разные? вернутся 2 строки - труляля и траляяк. или требуется чтото другое?
ну дык и что, что разные? вернутся 2 строки - труляля и траляяк. или требуется чтото другое?
бля точно )))))) спасибо. *помчался писать (ударение на а )))
блин ((((. в общем забыл скеазать что реализация данного алгоритма нужна на Delphi + mssql и код выше не фурычит. Набросайте плиз.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot