Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];
ВнизПро суммирование столбцов Найти похожие ветки
← →
SklifF (2001-12-03 19:08) [0]Есть 3 столбца 1:часы,2:минуты,3 секунды
Как лучше сделать запрос что бы он выполнил суммирования всех трех столбцов по строчно , но с учетом того что в мин 60 сек и т.д.
Помогете пожалуйста
← →
Dick Gonsales (2001-12-04 04:25) [1]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 поддерживает эти функции
← →
unfam (2001-12-04 04:27) [2]Ты имеешь ввиду так:
select sum(1)*3600,sum(2)*60,sum(3) from... или нет ?
← →
Dick Gonsales (2001-12-04 04:51) [3]Re unfam
Не совсем, но смысл верный
У тебя получается
всего часов в секундах, всего минут в секундах, всего секунд в секундах
это потом все равно суммировать придется для человеческого перевода
в вид
"Всего затрачено времени - "
1 год 2 месяца 20 дней 23 часа 10 минут 34 секунды
А я предлагаю сразу получать общее кол-во секунд, для сервера
это не напряг, а потом обрабатывать удобней.
Вообщем можно извратится и посчитать это все в и в SELECT,
но наворот безумный и работать будет раз во много дольше.
Таки проще написать такой SELECT и процедуру которая
превращает кол-во секунд в yy-mm-dd hh:mm:ss
← →
unfam (2001-12-04 09:21) [4]>Dick Gonsales. Да, я уже посмотрел твой ответ :)
← →
MVova (2001-12-04 10:32) [5]А вопрос то звучит "по строчно"
← →
MVova (2001-12-04 10:34) [6]Може так больше подойдет
select 4 = (sum(1)*3600 + sum(2)*60 + sum(3)) from...
← →
SklifF (2001-12-04 10:54) [7]Спасибо вам большое за подсказки
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c