![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Надо сравнить в таблице значения типа Date... [D6, IB6.x]
АТ © (2003-07-04 15:47:00)Как мне построить запрос "SELECT * FROM Table WHERE Table.Field1=Table.Field2"
Здесь Field1 и Field2 поля типа Date. Вводятся они в таблицу с информацией о дате и времени, и это в принципе важно. Но сравниваться они должны не учитвая информацию о времени. Т.е. если даты равны(не важно какое время там указано), то эту запись хватаем и тащим. Естественно в указанном выше примере они сравниваются с учетом времени, но мне нужна только дата. Как избежать информации о времени?
Zacho (2003-07-07 07:15:00) [1]
> АТ (04.07.03 16:21)
Это зависит от диалекта БД. В диалекте 3 типы DATE, TIME и TIMESTAMP - разные, и соответственно содержат только дату, только время и дату и время вместе. А в диалекте 1 - все этри типа на самом деле TIMESTAMP, т.е. дата и время вместе.
Читайте Data Definition Guide, там все написано.
АТ (2003-07-04 16:21:00) [2]Глаза мои глаза! У меня же IB7. А там Date - это дата, а Time - это время.
Но то что у меня - не обязательно будет у пользователя.
Johnmen - спасибо, попробую - напишу результат.
Соловьев (2003-07-04 16:15:00) [3]
> АТ (04.07.03 16:12)
> Соловьев - насколько я читал тип Date включает в себя и
> дату и время
я проверил на FB - дата только. насчет IB - не уверен. Попробуй. Хотя наверное
> Johnmen © (04.07.03 16:13)
как всегда прав :)))
Johnmen (2003-07-04 16:13:00) [4]Например, так :
WHERE
extract(year from T1.Field)=extract(year from T2.Field) AND
extract(month from T1.Field)=extract(month from T2.Field) AND
extract(day from T1.Field)=extract(day from T2.Field)
АТ (2003-07-04 16:12:00) [5]Соловьев - насколько я читал тип Date включает в себя и дату и время, т.е. получается масло масляное. Еще раз повторюсь, мне нужна только дата.
DenK_vrtz - Да ничаго! Живи! ;)
DenK_vrtz (2003-07-04 16:04:00) [6]А в IB6.x нет фунции trunc для работы с датами? Тады ой, извини не знал :-(
Соловьев (2003-07-04 16:00:00) [7]cast(field as date)
АТ (2003-07-04 15:59:00) [8]Нет, это не то. Я же про запрос спрашиваю, а не про то, как ф-иями Delphi отделить целую часть от дробной.
DenK_vrtz (2003-07-04 15:49:00) [9]trunc(дата)