Форум: "Базы";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];
ВнизУмножение в запросе Найти похожие ветки
← →
bubuka (2002-08-28 18:53) [0]Много Уважаеммый ALL, не подскажешь ли как составить запрос следующего содержания
Есть таблица
ID1, ID2 Int; Pole Float
Нужен запрос вида (типа):
SELECT
ID1, Умножение(Pole)
GROUP
BY ID1
Или это невозможно принципиально???
Пример:
ID1|ID2|Pole
------------
1 | 1 | 2.5
1 | 2 | 1.5
2 | 1 | 3.5
3 | 1 | 1.7
3 | 2 | 1.8
3 | 3 | 1.3
-------------
Результат:
------------
ID | Результат
------------
1 | 3.75
2 | 3.5
3 | 3.978
---------------------------------
Смысл получить следующее:
ID = 1, Результат = 2,5*1,5 = 3,75
ID = 2, Результат = 3,5
ID = 3, Результат = 1,7*1,8*1,3 = 3,978
← →
wicked (2002-08-28 19:25) [1]имхо без курсора и временной таблицы здесь не обойтись...
← →
sniknik (2002-08-29 00:14) [2]определить свою функцию???? 2000 MSSQL позволяет.
а вот одним запросом видимо никак.
← →
ЮЮ (2002-08-29 02:31) [3]если кол-во сомножителей ограниченное и известное:
select p1.ID1,p1.pole*isnull(p2.Pole,1)*isnull(p3.Pole,1)*... as Res from
(Select * from Table where ID2=1) p1
left join
Table p2 on p1.ID1=p2.ID1 and p2.ID2=2
left join
Table p3 on p1.ID1=p2.ID1 and p3.ID2=3
...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.091 c