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

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

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2011, 16:54   #1
Наки
Пользователь
 
Аватар для Наки
 
Регистрация: 03.11.2010
Сообщений: 24
Радость тип datetime...

В таблице базы данных на sql server есть два столбца: Дата выдачи и Дата возврата. Тип datetime. Пишу некое приложение (на c#), которое обеспечивает редактирование данных. Для редактирования данных использую объект BindingSource. Таблица отображается через DataGridView. Далее вопрос. Как получить в приложении количество дней между датой выдачи и датой возврата?

За ответы заранее спасибо!
Я не волшебница, я только учусь
Наки вне форума Ответить с цитированием
Старый 06.04.2011, 08:11   #2
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Функция DATEDIFF
Синтаксис:
DATEDIFF(datepart, startdate, enddate)
Функция возвращает интервал времени, прошедшего между двумя временными отметками — startdate (начальная отметка) и enddate (конечная отметка). Этот интервал может быть измерен в разных единицах. Возможные варианты определяются аргументом datepart.

Пишете в каком-нибудь tempquerry запрос:
Код:
select DATEDIFF(dd,date1,date2) as Field1 from YourTable
, где dd - формат возвращаемого значения (дни),
date1 - дата из которой вычитается дата date2,
Field1 - колонка в которой будет искомая цифра - количество дней,
YourTable - ваша таблица, где лежат даты.

пс: в оракле все просто: select date1-date2 from table1
псс: дернул справку отсюда: sql-tutorial
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.

Последний раз редактировалось Sparkman; 06.04.2011 в 08:16.
Sparkman вне форума Ответить с цитированием
Старый 06.04.2011, 21:45   #3
Наки
Пользователь
 
Аватар для Наки
 
Регистрация: 03.11.2010
Сообщений: 24
По умолчанию

Sparkman, спасибо за помощь!

В принципе разобралась с этим вопросом. Сделала через TimeSpan:
Код:
...
TimeSpan c = new TimeSpan();
            foreach (DataRowView row in таблицаBindingSource.List)
            {
                c = Convert.ToDateTime(row["СрокВозврата"]).Date - Convert.ToDateTime(row["ДатаВыдачи"]).Date;
...
В переменной с будет храниться разница между датами и временем, и узнать количество дней можно через свойство с.Days.
Как-то так...
Я не волшебница, я только учусь
Наки вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поле DateTime Lleu SQL, базы данных 5 01.03.2011 01:56
Тип данных Datetime - нужен только формат Year Blondy SQL, базы данных 3 10.10.2010 00:55
datetime Krasi PHP 1 10.07.2010 12:04
тип DateTime photozaz БД в Delphi 7 12.10.2008 21:02
DATETime XPAiN БД в Delphi 12 15.11.2007 13:37