Показать полную графическую версию : Выборка по дате
Pulvertum
07-10-2009, 17:56
Нубский вопрос: подскажите пожалуйста как осуществить выборку по определенной дате в таблице по всем полям в Microsoft SQL Server 2005. Поле, содержащие дату имеет тип datetime.
Я делаю это следующим образом:
SELECT поля_таблицы
FROM таблица
WHERE имя_поля_с_датой = ДД.ММ.ГГ.
естественно пишет ошибку.
потом написал следующие
.....
.....
WHERE имя_поля_с_датой = 'ДД/ММ/ГГ'
стал выдавать ошибку, связанное что то с типами данных.
Потом попытался написать:
WHERE имя_поля_с_датой = TO_DATE ('ДД/ММ/ГГ')
всеравно ничего не вышло
Delirium
08-10-2009, 00:59
select поля from Table where имя_поля_с_датой = '2009-01-30' - за 30 января. Если уж совсем никак не выходит, сделайте вот такой костыль:
select поля from Table where ( day(имя_поля_с_датой)='30' and month(имя_поля_с_датой) = '01' and year(имя_поля_с_датой) = '2009' )
Pulvertum
08-10-2009, 11:23
А в таблице в поле даты еще и время оказывается указано тоесть имеет вид: "13.07.1985 15:45"
как по такому полю выбирать?
BlackEric
08-10-2009, 20:50
Да точно также.
Приведите текст ошибки, если по прежнему не получается
Delirium
09-10-2009, 00:58
как по такому полю выбирать? »
where hour(имя_поля) ='5' and minute(имя_поля)='35'
http://www.sqlservercurry.com/2008/03/how-to-extract-year-month-day-hour.html
Pulvertum
09-10-2009, 15:18
Все получилось, спасибо большое. А ошибка была связано что то с типами данных и преобразованием
Щас точно не помню, посмотри инфу по FormatString.
Дата преобразуется в нужный вид, типа: [yyyymmdd] (y - год, m - месяц, d - дата, без точек)
Должно получится что-то в виде этого: Query->FieldByName("data")->AsDataTime.FormatString[ddmmyyyy]
---
Желаю удачи!
Bonus 1991
03-11-2009, 00:58
поможыть знайти мне ключи до NOD 32
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.