![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить общее и среднее время в стат.выборке? [D7, FB 1.0.3]
miwa © (2005-02-14 11:07:00)Есть 2 таблички. В первой - инфо о видеофайлах, во второй - об их просмотрах. Тоесть имеем типичное "один-ко-многим".
Делаю вот так:
select files.id, file_name,
sum(look_length - cast('00:00:00' as time)),
avg(look_length - cast('00:00:00' as time)),
count(looks.id)
from looks, files
where looks.file_id = files.id
group by files.id, file_name
order by 3 desc
Работает отлично, но результаты дает в секундах, что не есть удобно. А вот так
select
files.id,
file_name,
cast (sum(cast(look_length as DOUBLE PRECISION)) as time),
cast (avg(cast(look_length as DOUBLE PRECISION)) as time),
count(looks.id)
from looks, files
where files.id = looks.file_id
group by files.id, files.file_name
order by 3 desc
Получаю ошибку:Overflow occurred during data type conversion. Conversion error from string "00:00:01.0000".При этом еще и IBExpert AV выплевывает (правда, не вылетает, просто ругается):AV at 005AC167. Read of address 000000034.
Deniz (2005-02-15 06:38:00) [1]Не обязательно OnCalcField, можно в OnGetText у поля хоть "черта лысего" написать.
miwa (2005-02-14 12:50:00) [2]>А, чуть не забыл. Использую EhLib-ы.
Это фиолетово, ИМХО.
Мало ли. А вдруг там есть какая-то фича, о которой я не подозреваю :о).
В общем, если обработка в OnCalcFields премлема (как метод) - всем спасибо за внимание и участие.
Sergey13 (2005-02-14 12:33:00) [3]2[4] miwa © (14.02.05 12:22)
>Тогда пните в нужном направлении, как это сделать? OnCalcFields обрабатывать?
А почему нет? Раздели на 60, получишь минуты. Еще раз - часы.
>А, чуть не забыл. Использую EhLib-ы.
Это фиолетово, ИМХО.
miwa (2005-02-14 12:23:00) [4]Тоесь, я имею в виду, насколько такое решение будет правильным - вместо получения данных из запроса в формате time приводить их в этот формат на клиенте.
miwa (2005-02-14 12:22:00) [5]2 Sergey13 © (14.02.05 12:09) [3]
Ну дык и интерпретируй на клиенте как хочешь.
Тогда пните в нужном направлении, как это сделать? OnCalcFields обрабатывать? А, чуть не забыл. Использую EhLib-ы.
Sergey13 (2005-02-14 12:09:00) [6]2[2] miwa © (14.02.05 11:32)
>1. Удобно, например, в формате ЧЧ:ММ:СС, для чего и делался другой запрос.
Ну дык и интерпретируй на клиенте как хочешь.
miwa (2005-02-14 11:32:00) [7]1. Удобно, например, в формате ЧЧ:ММ:СС, для чего и делался другой запрос.
2. Текст ошибки ясен. Неясно ее происхождение, особенно в светеfrom string. А так же как с ней бороться.
Johnmen (2005-02-14 11:21:00) [8]1. А в чем удобно ?
2. Текст ошибки неясен ?