Вниз
Скачать: CL | DM;

Как получить сумму значений по диапазонам   Найти похожие ветки 

 
sh   (2004-10-05 20:38) [0]

День добрый!
Подскажите плз как получить
Признак|сумма диапазон1|сумма диапазон2|...
если есть
признак|значение
и диапазоны, например <0 и >0
и надо найти суммы значений соответстующие признакам, попадающих в эти диапазоны.


 
ЮЮ ©   (2004-10-06 03:02) [1]

вариант 1:

SELECT
 Codes.*, Gr1.Sum1, Gr2.Sum2
FROM
(SELECT DISTINCT признак as Code FROM Table) Codes
 LEFT JOIN (
   SELECT признак as Code, SUM(значение) Sum1, 0 Sum2
   FROM Table
   GROUP BY признак
   WHERE значение < 0
 ) Gr1 ON Codes.Code = Gr1.Code
 LEFT JOIN (
   SELECT признак as Code, SUM(значение) Sum2, 0 Sum2
   FROM Table
   GROUP BY признак
   WHERE значение > 0
 ) Gr2 ON Codes.Code = Gr2.Code

Вариант

SELECT
 Code, SUM(f1) Sum1, SUM(f2) Sum2
FROM (
 SELECT
   признак as Code,
   CASE WHEN значение < 0 THEN значение ELSE 0 END f1,
   CASE WHEN значение > 0 THEN значение ELSE 0 END f2
 FROM
   Table
 ) Table


 
Johnmen ©   (2004-10-06 09:15) [2]

>и надо найти суммы значений соответстующие признакам,
>попадающих в эти диапазоны.

Всё зависит от того, правильно ли склонение выделенного слова.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.032 c
1-1097848117
Фёдор Мегатронов
2004-10-15 17:48
2004.10.31
Какая функция жрёт больше ресурсов ?


14-1097599168
Nick Denry
2004-10-12 20:39
2004.10.31
Конвертер SVG -> растр.


1-1097787492
Loki3D
2004-10-15 00:58
2004.10.31
конвертация в bmp из GIF и TIFF


1-1097693549
volser
2004-10-13 22:52
2004.10.31
Левый и правый alt, ctrl, shift


1-1098176816
Eyfel
2004-10-19 13:06
2004.10.31
Delphi 8.net + NetFramework Update




   Наверх