Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2011, 07:35   #11
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

ГОСЕАН, я вот одного не пойму и вроде писал уже - нафига now() там? Вы можете объяснить свои действия? Зачем Вы его пихаете не к месту?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 27.10.2011, 07:44   #12
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
он не перегружем, там дата в принципе есть число с запятой(не помню тип правда) потому и вычитание работает.
Не TDateTime случаем?
(а теперь для сабжа)
Даты и время как раз хранятся в этом формате, но представляют собой дробные числа (сколько-то целых, сколько-то десятых), просто есть функции (например, DateToStr(...)), позволяющие интерпретировать эти числа, как дату.

Например, функция Now имеет как раз тип TDateTime и возвращает текущую дату и время.
Вот пример:
Код:
DateToStr(NOW) = 27.10.2011
TimeToStr(NOW) = 9:46:20
Вадим Мошев вне форума Ответить с цитированием
Старый 27.10.2011, 08:17   #13
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ГОСЕАН, в целом подход правильный!
Только, имхо, нет в MS SQL сервере функции DATE() (по крайней в SQL Server 2008)
попробуйте такой запрос:
Код:
SELECT nvd, DataDok, NDok, N_dok, FIO, sod, Expr1, datadisp, mes, den, 
   DATEDIFF(day, datadisp, GETDATE()) as DaysCount
FROM dbo.ispoln
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.10.2011, 09:39   #14
ГОСЕАН
Форумчанин
 
Аватар для ГОСЕАН
 
Регистрация: 03.05.2007
Сообщений: 247
По умолчанию

Цитата:
Сообщение от Sparkman Посмотреть сообщение
так как ничего не было предоставлено (язык, субд, и т.п.), то.. вот
Код:
SELECT    TRUNC (T_DATE - from_date)
       || ' day(s) '
       || TO_CHAR (TRUNC (SYSDATE) + (T_DATE - from_date),
                   'FMHH24 "hour(s)" MI "minute(s)" SS "second(s)"'
                  ) "Разность дат"
  FROM (SELECT TO_DATE (:date1, 'dd/mm/yyyy hh24:mi:ss') t_DATE,
               TO_DATE (:date2, 'dd/mm/yyyy hh24:mi:ss') from_date
          FROM DUAL)
from_date - t_date = результат

пс: нашел такое оригинальное решение в интернетах, когда приспичило.
СУБД SQL Server2000, язык программирования Delphi7
ГОСЕАН вне форума Ответить с цитированием
Старый 27.10.2011, 09:53   #15
ГОСЕАН
Форумчанин
 
Аватар для ГОСЕАН
 
Регистрация: 03.05.2007
Сообщений: 247
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
ГОСЕАН, в целом подход правильный!
Только, имхо, нет в MS SQL сервере функции DATE() (по крайней в SQL Server 2008)
попробуйте такой запрос:
Код:
SELECT nvd, DataDok, NDok, N_dok, FIO, sod, Expr1, datadisp, mes, den, 
   DATEDIFF(day, datadisp, GETDATE()) as DaysCount
FROM dbo.ispoln
выдает ошибку Function Argument Count Error
ГОСЕАН вне форума Ответить с цитированием
Старый 27.10.2011, 10:05   #16
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Ошибка дельфей или MSSQL? Запрос визуально правильный, в Query Analyzer на выполнение запускали?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2011, 11:05   #17
ГОСЕАН
Форумчанин
 
Аватар для ГОСЕАН
 
Регистрация: 03.05.2007
Сообщений: 247
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Ошибка дельфей или MSSQL? Запрос визуально правильный, в Query Analyzer на выполнение запускали?
MS SQL Server2000
ГОСЕАН вне форума Ответить с цитированием
Старый 27.10.2011, 11:13   #18
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
MS SQL Server2000
А я про что? У него и есть Query Analyzer
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2011, 11:34   #19
ГОСЕАН
Форумчанин
 
Аватар для ГОСЕАН
 
Регистрация: 03.05.2007
Сообщений: 247
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А я про что? У него и есть Query Analyzer
inkorrect syntax near 'day' пишет
ГОСЕАН вне форума Ответить с цитированием
Старый 27.10.2011, 11:56   #20
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

запустите среду обслуживания MS SQL (это или Query Analyzer или "Среда SQL Server Management Studio") и выполните запрос там.

p.s. интересно, а такой запрос работает?
Код:
SELECT DATEDIFF(day,'2008-06-05','2008-08-05') AS DiffDate
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция преобразования количества дней в количество лет atenon Microsoft Office Access 4 11.09.2010 18:42
подсчет дней Tadjik Microsoft Office Access 3 06.09.2010 14:24
Определение количества указанных дней в любом месяце valerij Microsoft Office Excel 3 25.06.2010 15:46
Подсчет количества дней за определенный месяц konon0405 Microsoft Office Excel 5 30.03.2010 09:04
подсчет рабочих дней ruavia3 Microsoft Office Excel 14 01.03.2010 11:22