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

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

Про суммирование столбцов [D4, IB4.x, MSSQL, ]


SklifF ©   (2001-12-03 19:08:00) 

Есть 3 столбца 1:часы,2:минуты,3 секунды
Как лучше сделать запрос что бы он выполнил суммирования всех трех столбцов по строчно , но с учетом того что в мин 60 сек и т.д.

Помогете пожалуйста


SklifF   (2001-12-04 10:54:00) [1]

Спасибо вам большое за подсказки


MVova   (2001-12-04 10:34:00) [2]

Може так больше подойдет
select 4 = (sum(1)*3600 + sum(2)*60 + sum(3)) from...


MVova   (2001-12-04 10:32:00) [3]

А вопрос то звучит "по строчно"


unfam   (2001-12-04 09:21:00) [4]

>Dick Gonsales. Да, я уже посмотрел твой ответ :)


Dick Gonsales   (2001-12-04 04:51:00) [5]

Re unfam
Не совсем, но смысл верный
У тебя получается
всего часов в секундах, всего минут в секундах, всего секунд в секундах
это потом все равно суммировать придется для человеческого перевода
в вид
"Всего затрачено времени - "
1 год 2 месяца 20 дней 23 часа 10 минут 34 секунды
А я предлагаю сразу получать общее кол-во секунд, для сервера
это не напряг, а потом обрабатывать удобней.

Вообщем можно извратится и посчитать это все в и в SELECT,
но наворот безумный и работать будет раз во много дольше.
Таки проще написать такой SELECT и процедуру которая
превращает кол-во секунд в yy-mm-dd hh:mm:ss


unfam   (2001-12-04 04:27:00) [6]

Ты имеешь ввиду так:
select sum(1)*3600,sum(2)*60,sum(3) from... или нет ?


Dick Gonsales   (2001-12-04 04:25:00) [7]

SELECT
(SUM(CONVERT(NUMERIC(2,0),(f_hour)))*3600+
SUM(CONVERT(NUMERIC(2,0),(f_min)))*60+
SUM(CONVERT(NUMERIC(2,0),(f_sec)))
) as sec_time
FROM tmp_time

так ты получаешь суммарное количество секунд,
их уже приводить к привычному виду yy-mm-dd hh:mm:ss
с помощью стороней процедуры через остаток
целочисленного деления, Sybase поддерживает эти функции


Наверх

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