|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Создать SQL запрос для суммирования столбца в последней строке
Подскажите кто нибудь. база Paradox. Необходимо составить SQL запрос так, чтобы Данные столбца 'col1' суммировались (1+2+3) и заносились в ячейки последней строки -- "ИТОГО" = 6
name....|col1|col2| ---------------------- aa........|..1..|..1..| bb........|..2..|..1..| cc........|...3..|..1..| ИТОГО |...6..|..3..| Такое можно сделать? Спасибо. |
#2
|
|||
|
|||
Цитата:
Код:
SELECT name, col1, col2 FROM table UNION SELECT 'ИТОГО', SUM(col1), SUM(col2) FROM table Незнаю, правда, будет ли такое работать в BDE, но в MSSQL работает... PS И повторю ещё раз - так делать очень нежелательно. |
#3
|
|||
|
|||
Если использовать какой-нибудь продвинутый Grid, то можно и без второго запроса. DBGridEh точно это умеет
|
#4
|
|||
|
|||
С UNION в Delphi так и не попробовал, но потом попробую обязательно. В Database Desktop-е попробовал сработало, спасибо. А, почему нежелательно? Из-за возможных неправильных перестроений строк при сортировке? Или другое?
Поступил следующим образом. Создал временную базу (выборку из основной): Код:
INSERT INTO temp1.DB SELECT name, col1, col2 FROM Base.DB WHERE Data=01.01.1012 GROUP BY name, col1, col2 Код:
UPDATE temp1.DB SET col1 = (SELECT sum(col1) as col1 FROM temp1.DB WHERE not NAME = 'ИТОГО') WHERE NAME = 'ИТОГО' Всем спасибо за содействие Последний раз редактировалось sandroha, 17.08.2012 в 13:15. |