![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Access [Access]
surkis © (2004-08-18 12:58:00)Как в Access'e в запросе(созданом внутри базы) показать записи профильтрованые па полю дата(все записи за текущий месяц)
Digitman (2004-08-18 17:09:00) [1]
> тоже не выходит
что бы что-то вышло, надо чтобы это что-то для начала вошло !
любопытно вот мне, что же ты ожидал получить в рез-те преобразования CDate(разница_дабл_значений) ?
surkis (2004-08-18 14:51:00) [2]> вычитание даты из даты - это бред !
Может я не совсем понял что ты имеешь ввиду но так "SELECT reg.userid, CDate((CDbl([regTimeOut])-CDbl([regTimeIn]))) AS allTime FROM reg;" тоже не выходит
Digitman (2004-08-18 14:46:00) [3]
> surkis (18.08.04 14:34) [7]
вычитание даты из даты - это бред !
вычитать следует вещ.число из вещ.числа, к каковым следует приводить значения полей типа дата/время (см. ф-цию CDbl()) перед тем как что-то из чего-то вычитать
surkis (2004-08-18 14:34:00) [4]> ДатаВремя1-ДатаВремя2 as Поле
Я так и сделал но оно не работает! В Access'e Написал такой запрос "SELECT reg.userid, ([reg]![regTimeOut]-[reg]![regTimeIn]) AS [long1] FROM reg (где reg - талица,userid - поле целое,regTimeOut и regTimeIn - поля Дата/Время)
", делаю execute Он выводит поле userid правильно а в поле long1 пишет "#Ошибка"
Digitman (2004-08-18 14:26:00) [5]давай-ка уже думай сам
значение типа Дата/Время есть ни что иное как значение типа Double, в котором целая часть отражает кол-во суток, прошедших со времен царя Гороха, а дробная часть - число миллисекунд, прошедших с начала тек.суток
вычтя из большей даты меньшую ты получишь разницу, в которой целая часть покажет разницу в днях, а дробная - доп.значение разницы в миллисекундах
число дней умножаешь на 24 (часа в сутках), прибавляешь значение ф-ции Hour(разница) - это будет разница в часах
ф-ция Minute(разница) покажет минуты
ф-ция Second(разница) покажет секунды
zx (2004-08-18 14:25:00) [6]ДатаВремя1-ДатаВремя2 as Поле
surkis (2004-08-18 14:12:00) [7]А как?
Digitman (2004-08-18 14:05:00) [8]
> surkis (18.08.04 13:49) [2]
можно
surkis (2004-08-18 13:49:00) [9]Спасибо :)
А можно ли в запросе создать поле которое будет показывать разницу двух полей типа Дата/Время в которых зафиксировано время
Digitman (2004-08-18 13:08:00) [10]SELECT [Бухгалтерские проводки].*, Month([DAT]) AS Выражение2
FROM [Бухгалтерские проводки]
WHERE (((Year([DAT]))=Year(Date())) AND ((Month([DAT]))=Month(Date())));