-
CREATE TABLE DVIGENIE ( .. CHAS_ALL Time, .. ); как вычислить сумму времени select sum(CHAS_ALL) from DVIGENIE ругается на невозможность
-
> dolmat (24.05.2012 12:18:00) [0]
a.. Type TIME stores the data on time to within a ten-thousand share of second. A range of possible values - from 00:00 AM up to 23:59.9999 PM. А сумма больше 23:59.9999 Может попробовать сделать приведение к другому типу, например TIMESTAMP
-
>Anatoly Podgoretsky select sum(cast(DVIGENIE.CHAS_ALL AS TIMESTAMP)) from DVIGENIE тож невозможно,
а вот так срабатывает только надо потом вычисляемое поле делать. А ещё другая проблемы вылезла в group by extract(MONTH from DVIGENIE.DAT_PL) as mons_d нельзя
select sum(extract(HOUR from DVIGENIE.CHAS_ALL)) as h_chas_all, sum(extract(MINUTE from DVIGENIE.CHAS_ALL)) as m_chas_all, sum(extract(HOUR from DVIGENIE.CHAS_DV)) as h_chas_dv, sum(extract(MINUTE from DVIGENIE.CHAS_DV)) as m_chas_dv, sum(extract(HOUR from DVIGENIE.CHAS_POGR)) as h_CHAS_POGR, sum(extract(MINUTE from DVIGENIE.CHAS_POGR)) as m_CHAS_POGR, sum(DVIGENIE.PROBEG_VSEGO) as PROBEG_VSEGO, sum(DVIGENIE.PROBEG_GRUZ) as PROBEG_GRUZ, sum(DVIGENIE.PROBEG_JPS) as PROBEG_JPS, sum(DVIGENIE.PER_GRUZ) as PER_GRUZ, sum(DVIGENIE.T_KM) as T_KM, sum(DVIGENIE.RASH_TOP_NORM) as RASH_TOP_NORM, sum(DVIGENIE.RASH_TOP_FAKT) as RASH_TOP_FAKT, SPR_TRANSP.UST_GPS, SPR_TRANSP.TOPLIVO, VID_TRANSP.ID_TRANSP, extract(MONTH from DVIGENIE.DAT_PL) as mons_d from DVIGENIE DVIGENIE left join SPR_TRANSP SPR_TRANSP on (DVIGENIE.ID_TRANSP=SPR_TRANSP.ID_TR) left join VID_TRANSP VID_TRANSP on (SPR_TRANSP.ID_VTR=VID_TRANSP.ID_VTR) group by SPR_TRANSP.UST_GPS, SPR_TRANSP.TOPLIVO, VID_TRANSP.ID_TRANSP, order by SPR_TRANSP.TOPLIVO, VID_TRANSP.ID_TRANSP
-
Надо Работать с тем, с чем надо работать, а с чем не надо - работать не надо. Время, как точку во времени, надо хранить как date/time А количество затраченного времени надо хранить как количество - в целых/дробных числах
-
>Cobalt fastreport нормально понимает и суммирует это поле, но у меня немного другой случай
-
> [3] Cobalt © (24.05.12 13:48) > Время, как точку во времени, надо хранить как date/time А количество затраченного времени надо хранить как количество - в целых/дробных числах
Или хранить начало и конец периода
-
fastreport нормально понимает и суммирует это поле, но у меня немного другой случай
а сколько будет вчера + вчера?
Это "позавчера", или же это некая дата в 4014 году?
-
> [4] dolmat (24.05.12 13:59) > но у меня немного другой случай
Ты в этом поле не момент времени хранишь, а количество времени?
-
> Inovet (24.05.2012 14:27:05) [5]
Тайм такой и есть, хранится как число 1сек/10000 интервалов Если не удастся конвертировать в другой тип, то можно попробовать на клиенте
-
в любом случае диагноз - неправильно выбран тип данных.
|