Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 266

/ вопрос открыт /

Доброго вам здравия.
Вопрос такой:
Как мне получить разницу между полем даты таблицы БД и нынешней датой!
Принци такой необходимо чтобы оно высчитывало года (типа стаж работы). Когда пришел на работу - минус нынешняя и получение остатка.
Заранее благодарен!

BLOOD_OMEN Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: BLOOD_OMEN (статус: Посетитель)
Вопрос отправлен: 15 января 2007, 20:08
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, BLOOD_OMEN!
Это дело можно решить двумя способами. Первый - вычисляемые поля. Можно в Table добавить новое поле и написать формулу, по которой его считать.
А можна, так как я делал в своё время. Через SQL запрос. Многие БД имеют функцию получения текущей даты/время и работы с ней. И их имена типа DATE, NOW (читаем доки). Теперь выбираем записи к примеру таким запросом
Select X,Y, (NOW-DT) from table
где X,Y - какие-то поля. DT - поле с датой. NOW - функция взятия текущей даты.
Такой способ наиболее правильный. Не думайте, что на клиенте вы быстрей сосчитаете! Сервера БД специально оптимизируют под это.

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 15 января 2007, 20:31
Оценка за ответ: 5


Мини-форум вопроса

Всего сообщений: 3; последнее сообщение — 16 января 2007, 19:01; участников в обсуждении: 3.
Вадим К

Вадим К (статус: Академик), 15 января 2007, 20:43 [#1]:

Что не потой ссылке кликнул - пустой ответ отправил :(
А теперь по теме. Это дело можно решить двумя способами. Первый - вычисляемые поля. Можно в Table добавить новое поле и написать формулу, по которой его считать.
А можна, так как я делал в своё время. Через SQL запрос. Многие БД имеют функцию получения текущей даты/время и работы с ней. И их имена типа DATE, NOW (читаем доки). Теперь выбираем записи к примеру таким запросом
Select X,Y, (NOW-DT) from table
где X,Y - какие-то поля. DT - поле с датой. NOW - функция взятия текущей даты.
Такой способ наиболее правильный. Не думайте, что на клиенте вы быстрей сосчитаете! Сервера БД специально оптимизируют под это
Галочка "подтверждения прочтения" - вселенское зло.
Ерёмин А.А.

Ерёмин А.А. (статус: *Администратор), 15 января 2007, 20:59 [#2]:

Вадим К: поправили Ваш ответ.
Knjazev

Knjazev (статус: 3-ий класс), 16 января 2007, 19:01 [#3]:

Учебники надо было читать!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:35
Выполнено за 0.02 сек.