Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
RAD XE3+

Сумма в столбце, после вычисления временного интервала

06.11.2022, 13:21. Показов 657. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть запрос - он работает.
Delphi
1
SQL.Add('SELECT * , DateDiff("d", [data1], [data2]) AS staj FROM stage' );
Как теперь сюда добавить вычисление суммы столбца - staj ?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.11.2022, 13:21
Ответы с готовыми решениями:

Задан момент начала временного интервала и его продолжительность. Определить момент окончания интервала
задан момент начала временного интервалаи его продолжительность (в часах, минутах и секундах). проверить корректность вводимых данных....

Программирование временного интервала
Привет Всем! Подскажите. Как можно реализовать в аccess , что бы при выборе в комбобоксе например 'За неделю' в соответствующих полях...

Расчет временного интервала
Есть две ячейки A1 и A2 в которых задано время в формате xx:xx:xx. В третей ячейки подсчитано прошедшее время (A3=A2-A1) также в формате...

19
Модератор
 Аватар для D1973
9921 / 6457 / 2457
Регистрация: 21.01.2014
Сообщений: 27,401
Записей в блоге: 3
06.11.2022, 13:39
Цитата Сообщение от Alex_abs Посмотреть сообщение
Как теперь сюда добавить вычисление суммы столбца
Никак. Вычисление суммы поля даст одно единственное число. Куда, в какую запись, Вы собираетесь это число добавить в многострочном наборе данных, получаемых указанным запросом?
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 14:12  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
Куда, в какую запись, Вы собираетесь это число добавить в многострочном наборе данных, получаемых указанным запросом?
Да нужно вывести в Label сумму временных интервалов после их вычисления )
их вычислил а как теперь суммировать не могу понять.
0
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
06.11.2022, 15:01
Alex_abs, Ну сделайте два запроса, в чём проблема? Или вычислите на клиенте.
А вообще есть функция SUM(). Запихните в неё ваше выражение DateDiff("d", [data1], [data2]) и будет вам сумма. Только потом, вероятно, надо будет отформатировать результат в приемлемое время.
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
06.11.2022, 15:05
Лучший ответ Сообщение было отмечено Alex_abs как решение

Решение

Думается мне, что вы хотите сделать нечто такое:
SQL
1
SELECT SUM(DateDiff("d", [data1], [data2])) FROM stage
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 15:18  [ТС]
Цитата Сообщение от Gluck99 Посмотреть сообщение
Ну сделайте два запроса, в чём проблема?
Цитата Сообщение от Gluck99 Посмотреть сообщение
есть функция SUM(). Запихните в неё ваше выражение DateDiff("d", [data1], [data2]) и будет вам сумма
так в этом и есть проблема! можно пример увидеть как это должно выглядеть?

Добавлено через 4 минуты
Цитата Сообщение от Пытливый Посмотреть сообщение
SELECT SUM(DateDiff("d", [data1], [data2])) FROM stage
выдает ошибку
0
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
06.11.2022, 15:30
Цитата Сообщение от Alex_abs Посмотреть сообщение
выдает ошибку
Ошибка, конечно, секретная. Не показывайте её никому.
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 16:22  [ТС]
Цитата Сообщение от Gluck99 Посмотреть сообщение
Ошибка, конечно, секретная. Не показывайте её никому.
не секретная конечно ) база данных Access - если что.
Изображения
 
0
Модератор
 Аватар для D1973
9921 / 6457 / 2457
Регистрация: 21.01.2014
Сообщений: 27,401
Записей в блоге: 3
06.11.2022, 17:33
При выполнении запроса из поста 5? Да ну!
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 17:55  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
При выполнении запроса из поста 5
Именно из него ) я не против сделать и два запроса ) только как второй должен выглядеть?
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
06.11.2022, 18:12
Цитата Сообщение от Alex_abs Посмотреть сообщение
выдает ошибку
Видите ли в чем дело. В предложенном мной запросе поля id нет вообще и выдавать такую ошибку он не может в принципе. НО! Если вы этот запрос пытаетесь выполнить в Delphi, причем текст его вы засунули в старый AdoQuery, то такое возможно при некоторых условиях. Решение - сделайте новый AdoQuery и уже в него засуньте текст запроса.
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 18:35  [ТС]
Цитата Сообщение от Пытливый Посмотреть сообщение
Видите ли в чем дело. В предложенном мной запросе поля id нет вообще и выдавать такую ошибку он не может в принципе
не понимаю при чем тут вообще поле id. но поковырялся и решение нашел.
запрос должен так выглядеть.
Delphi
1
SQL.Add('SELECT SUM(DateDiff("d", [data1], [data2])) AS staj FROM stage');
так заработало ) спасибо всем за внимание.
0
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
06.11.2022, 18:40
Цитата Сообщение от Alex_abs Посмотреть сообщение
поковырялся и решение нашел
Именно это я вам и говорил с самого начала.
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
06.11.2022, 19:13  [ТС]
Цитата Сообщение от Gluck99 Посмотреть сообщение
Именно это я вам и говорил с самого начала.
Говорили. Но конкретного примера я не увидел. Вариаций то море может быть.
Цитата Сообщение от Пытливый Посмотреть сообщение

SQL
1
SELECT SUM(DateDiff("d", [data1], [data2])) FROM stage
такой подход лучше навеивает мысли.
0
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
07.11.2022, 00:38
Цитата Сообщение от Alex_abs Посмотреть сообщение
Вариаций то море может быть.
Вариант запроса там только один реально.
А ваша секретная ошибка с текстом запроса вообще никак не связана. Просто надо внимательно работать с датасетом, и если у вас только одно выражение, то лучше воздержаться от SQL.Add(), а присваивать текст через .Text := 'SELECT ...';
Тогда не будете забывать очищать.
0
Модератор
 Аватар для D1973
9921 / 6457 / 2457
Регистрация: 21.01.2014
Сообщений: 27,401
Записей в блоге: 3
07.11.2022, 01:20
Цитата Сообщение от Alex_abs Посмотреть сообщение
решение нашел
А чем, стесняюсь спросить, Ваш запрос отличается от того запроса, который Вам написал Пытливый? Нафиг никому не нужным в данном случае алиасом?
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,611
07.11.2022, 01:37
Цитата Сообщение от Alex_abs Посмотреть сообщение
не понимаю при чем тут вообще поле id. но поковырялся и решение нашел.
Метод тыка/ковыряния очень ненадежный и трудо/время/ёмкий способ решения задач. И ладно бы, если бы вы тратили на этот способ только своё время. Но вы заставляете нас тратить ещё и наше время.
0
0 / 2 / 0
Регистрация: 28.12.2021
Сообщений: 24
07.11.2022, 12:07  [ТС]
Цитата Сообщение от northener Посмотреть сообщение
Метод тыка/ковыряния очень ненадежный и трудо/время/ёмкий способ решения задач
Потому я и начал спрашивать тут.

Цитата Сообщение от D1973 Посмотреть сообщение
А чем, стесняюсь спросить, Ваш запрос отличается от того запроса, который Вам написал Пытливый?
А тем отличается, что мне не понятно было где результат запроса забрать. Теперь знаю, он там лежит
Delphi
1
Form1.ADOQuery3.Fields[0].AsInteger;
Цитата Сообщение от Gluck99 Посмотреть сообщение
Тогда не будете забывать очищать.
Я и не забывал там очищать, там все по феншую )
Delphi
1
2
3
4
5
6
7
8
with Form1.ADOQuery3 do
begin
  Close;
  SQL.Clear;
  SQL.Add('SELECT SUM(DateDiff("d", [data1], [data2]))  FROM stage');
  Open;
 
end;
Ну и в заключение - самый главный косяк тут был (почему ошибку било) в том что если на объекте ADOQuery тыкнуть пкм
и далее зайти в FieldsEditor там добавить столбцы - всё! на этом не получается запрос.

Добавлено через 10 минут
Цитата Сообщение от northener Посмотреть сообщение
Но вы заставляете нас тратить ещё и наше время.
А на счет времени куда и зачем мы его тратим можно создавать отдельный форум.
Я не заставлял его тратить, это дело доброе и добровольное )
Спасибо всем кто помогал.
0
Модератор
 Аватар для D1973
9921 / 6457 / 2457
Регистрация: 21.01.2014
Сообщений: 27,401
Записей в блоге: 3
07.11.2022, 12:18
Цитата Сообщение от Alex_abs Посмотреть сообщение
всё! на этом не получается запрос
Получается, вот только в запросе должны участвовать только те поля, что и в списке Fields.

Не по теме:

Как по мне, инструмент совсем не нужный, сроду его не использовал - и ничего...

0
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
07.11.2022, 12:18
Цитата Сообщение от Alex_abs Посмотреть сообщение
главный косяк
Так это не косяк, это неумение пользоваться средой разработки. Я же говорю - забываете очищать. Правда, в другом месте, но в любом случае это не имеет отношение к изначальному вопросу - текст запроса вам дали рабочий.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.11.2022, 12:18
Помогаю со студенческими работами здесь

Отсчет временного интервала
На прокатном стане объект попадает под первый фотодатчик и начинается отсчет времени, а когда он достигает второго фотодатчика, то...

добавление временного интервала в RTC
Доброго времени суток. Такой вопрос. Необходимо к текущему времени в RTC добавить интервал времени. При этом произвести учет даты с учетом...

слайдер для временного интервала
Доброго времени суток, товарищи, подскажите пожалуйста, как можно реализовать слайдер для временного интервала? что то не особо...

SCHED_RR изменение временного интервала
Подскажите пожалуйста. Только начал изучать планирование процессов и sched_setscheduler. Сейчас заткнулся на политике SCHED_RR. Не могу...

Отсеять из временного интервала время
Добрый день, есть столбец с данными о дате и времени, когда пользователь заходит в систему, из этого столбца требуется брать только...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru