powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подскажите, как создать запрос на сложение времени
15 сообщений из 15, страница 1 из 1
Подскажите, как создать запрос на сложение времени
    #39616250
Юрий495
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Друзья, помогите начинающему с простеньким запросом на сложение времени. Допустим, имеется таблица [ВРЕМЯ] и в ней три поля в полном формате времени чч:мм:сс [TIME1],[TIME2],[SUMMA]
TIME1TIME2SUMMA1:30:556:41:37...1:33:415:57:28............
Надо создать запрос на вывод в поле SUMMA в полном формате времени сумму полей TIME1 и TIME2, т.е. на выходе должно получится в первой строке 8:12:12, во второй 7:31:09 и т.д.
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616279
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Юрий495,
Так в чем беда, если у вас поля time1 и time2 имеют формат время просто сложите эти два поля в конструкторе запроса в отдельном поле:
SUMMA: [time1]+[time2]

Или в SQL:
Код: sql
1.
2.
SELECT вашаТаблица.time1, вашаТаблица.time2, [time1]+[time2] AS SUMMA
FROM вашаТаблица;
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616318
Фотография Tarasios
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Лалов,
кажется, у ТС затруднение вызвало не само сложение времени, а именно "вбивание" полученного результата в третье поле SUMMA.

Юрий495 , у вас как минимум два варианта:
1. физически не делать поля SUMMA в таблице, хватит и первых двух полей с исходным временем TIME1 и TIME2. А уже при необходимости - в форме или отчёте - сделать свободное поле и в нём уже отображать сумму первых двух полей .

2. Если уж очень хочется держать поле SUMMA в таблице, то забивайте в него значение суммы первых двух полей запросом на обновление.
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616348
Юрий495
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В моём случае не всё так просто. Я в начале не правильно написал,таблица [ВРЕМЯ] является результатом выполнения предыдущего запроса [ВРЕМЯ]из другой большой таблицы, которая является связанной и изначально представлена в виде dbf-файла ,а сами поля TIME1 и TIME2 на выходе имеют общий формат и при их сложении тупо происходит склейка двух полей. В свойствах полей в появляющейся табличке справа почему-то не удаётся поменять формат полей на "полный формат времени", т.е. форматы не отображаются. Можно конечно после выполнения запроса [ВРЕМЯ] выгрузить результат из access в excel, а потом обратно в access и там уже в конструкторе таблицы поменять форматы, но это долгий путь. Кстати, сразу импортировать исходный dbf-файл в access не получается, пишет "определено слишком много полей".
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616359
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Юрий495В моём случае не всё так просто. Я в начале не правильно написал,таблица [ВРЕМЯ]...а сами поля TIME1 и TIME2 на выходе имеют общий формат и при их сложении тупо происходит склейка двух полей. В свойствах полей в появляющейся табличке справа почему-то не удаётся поменять формат полей на "полный формат времени", т.е. форматы не отображаются. .

По сути ничего не меняется кроме приведения значений полей к формату типа время, с последующим складыванием.

В конструкторе запроса/расчетном поле таблицы можете написать расчетное поле SUMMA так:
SUMMA: CDate([time1])+CDate([time2])

а в запросе так, и будет ок:

Код: sql
1.
2.
SELECT ВРЕМЯ.time1, ВРЕМЯ.time2, CDate([time1])+CDate([time2]) AS SUMMA
FROM ВРЕМЯ;
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616366
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня вопрос: как на форме получить количество часов?

Например есть поля в форме:

Начало: 09:30

Окончание: 15:30

Как получить количество времени в часах и минутах: 15:30 - 09:30 ?
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616401
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nebo, за столько лет так и не научился пользоваться справкой и Object Browser? Одно вызывается F1, другое - F2.

Function DateDiff (Interval As String, Date1, Date2, [FirstDayOfWeek As VbDayOfWeek = vbSunday ], [FirstWeekOfYear As VbFirstWeekOfYear = vbFirstJan1 ])
Member of VBA.DateTime


Код: vbnet
1.
2.
3.
4.
5.
?DateDiff("n", TimeValue("9:30"),TimeValue("15:30"),0)
 360 

?DateDiff("h", TimeValue("9:30"),TimeValue("15:30"),0) & ":" & Format((DateDiff("n", TimeValue("9:30"),TimeValue("15:30"),0) mod 60),"00")
6:00
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616404
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+
Код: vbnet
1.
2.
?CDate(TimeValue("15:30")-TimeValue("9:30"))
6:00:00 
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616405
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
?TimeSerial(DateDiff("h", TimeValue("9:30"),TimeValue("15:30"),0), (DateDiff("n", TimeValue("9:30"),TimeValue("15:30"),0) mod 60), 0)
6:00:00 
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39616416
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Панург,

Спасибо большое) Иногда мне проще тут спросить совета)
Действительно как я мог забыть про DateDiff ?
Спасибо Вам ещё раз) Вы моментально предоставили мне кусок хорошего кода.
Попробую попозже.
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39617080
Юрий495
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей Лалов,

Спасибо за подсказку. Как говорится, век живи - век учись.
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39617096
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Юрий495Сергей Лалов,

Спасибо за подсказку. Как говорится, век живи - век учись.

вот только вопрос: что вы получите от сложения 13 и 14 часом
короче --сумма более 24 часов
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39617099
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПЕНСИОНЕРКА,
Если складывать в родном формате время, то все будет нормально)
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39617102
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ЛаловПЕНСИОНЕРКА,
Если складывать в родном формате время, то все будет нормально)

что-то я сомневаюсь , что получится 27 часов
...
Рейтинг: 0 / 0
Подскажите, как создать запрос на сложение времени
    #39617103
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПЕНСИОНЕРКА,

Правильно сомневаетесь,сложите,гляньте)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подскажите, как создать запрос на сложение времени
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]