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

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

Составление запроса с вычитанием одного поля из другого [D7, Paradox]


Страницы:   1 2

gonzales ©   (2004-02-03 15:18:00) 

Доброе время суток!
Работаю с BDE и столкнулся с проблемой. Имеется таблица с полями даты, необходимо составить запрос, в котором автоматом одна дата вычиталась из другой, а в идеале еще и усреднялась.
что-то типа select field2-field1 where field3=text. Но не знаю как оформить


gonzales   (2004-02-03 15:38:00) [21]

а что будет результатом запроса?


Sandman25   (2004-02-03 15:36:00) [22]

select avg()
from table


Sandman25   (2004-02-03 15:36:00) [23]

group by даже не надо.


Sandman25   (2004-02-03 15:36:00) [24]

[14] gonzales © (03.02.04 15:29)

В чем проблема

select field1, field2, cast(...)
from table1
group by field1, field2
???


gonzales   (2004-02-03 15:29:00) [25]

вот и вопрос, можно ли организовать это в одном запросе


gonzales   (2004-02-03 15:28:00) [26]

в принципе требуется количество минут, секунд, дней, и т.д. В общем-то tdatetime - это кол-во дней и есть


gonzales   (2004-02-03 15:25:00) [27]

только как теперь грамотный запрос составить


Mike Kouzmine   (2004-02-03 15:25:00) [28]

Тимохов © (03.02.04 15:24) [9] Может быть. Но требуется TDateTime.


gonzales   (2004-02-03 15:24:00) [29]

avg(cast((date1-date2) as float)) - совершенно верно


Тимохов   (2004-02-03 15:24:00) [30]


> Mike Kouzmine © (03.02.04 15:22) [5]

Вроде как количество дней...


gonzales   (2004-02-03 15:24:00) [31]

идея вот такая. В базе содержатсязаписи с времемем начала и конца выполнения операции. Необходимо найти среднее. записей около 2000 шт. Крайне не хотелось бы использовать перебор


Sandman25   (2004-02-03 15:24:00) [32]

avg(cast((date1-date2) as float))

в результате имеем среднюю длину интервала в днях.


HSolo   (2004-02-03 15:23:00) [33]

???
(30 января 2004 г. - 12 декабря 2003 г.) - это какая дата?


Mike Kouzmine   (2004-02-03 15:22:00) [34]

gonzales © (03.02.04 15:21) [3] 1 апреля 1998 года - 2 сентября 1675 года = ?


gonzales   (2004-02-03 15:21:00) [35]

вычисляемые поля это как?


gonzales   (2004-02-03 15:21:00) [36]

опять же дату. Tditetime1-tditetime2


Johnmen   (2004-02-03 15:20:00) [37]

>одна дата вычиталась из другой

Что получим в разности ? :))))))))))


Ann   (2004-02-03 15:20:00) [38]

а вычисляемые поля не подойдут?


Страницы:   1 2

Наверх

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