Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

виртуальные таблицы - ? или другой способ... [FB1.5+IBExprt2]


Karburator ©   (2005-05-07 18:08:00) 

программеры, подскажите, как оптимальней сделать следующее. Допустим есть следующая таблаица
CREATE TABLE T_tabla (
    ID INTEGER NOT NULL,
    ID_F1 INTEGER,
    ID_F2 INTEGER,
    ID_F3 INTEGER,
    F_IF INTEGER,
    F_SUM INTEGER  );

Нужно проссумировать значения поля F_SUM во всех строках с одинаковыми ключами ID_F1, ID_F2 и ID_F3. НО! Если поле F_IF равно 1, то поле F_SUM данной строки не ссумируется с остальными.
По-моему это лучше всего делать с использованием созданной на время работы ХП таблицы, но я краем уха слышал еще о существовании каких-то виртуальных таблиц...
Вобщем расписывать алгоритмы совершенно не нужно - буду благодарен если укажите направление.


Karburator   (2005-05-07 19:06:00) [1]

Спасибо


Sergey Masloff   (2005-05-07 18:47:00) [2]


select sum(F_SUM) from TABLE
WHERE F_IF <> 1
GROUP BY ID_F1, ID_F2, ID_F3
union all
select sum(F_SUM) from TABLE
WHERE F_IF = 1


Наверх

Титульная страница Поиск, карта сайта Написать письмо