Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DATA [D7, IB6.x, Paradox]


Fantasy ©   (2004-08-15 02:06:00) 

Помогите задать запрос на SQL  Firebird 1.5 Диалект 3
мне надо показатЬ все записи месяца допустим */02/2004
как
SELECT * FROM db_astra WHILE F_DATE = */02/2004
НЕ ПОНИМАЕТ :o)


Alexandr   (2004-08-16 07:54:00) [1]

ну вы блин даете.
Для FB
1) Использовать UDF для сравнения месяца и года
2) Если нужен индекс, то этой UDF в триггере обновлять специальное поле. По нему и смотреть.
3) Использовать Yaffil с его индексами по выражениям.


Fay   (2004-08-16 02:56:00) [2]

2 jack128 ©   (15.08.04 19:00) [11]
Это из T-SQL


jack128   (2004-08-15 19:00:00) [3]

а в Paradox'e сть такая функция? В IB таковой нету.


Ольга   (2004-08-15 14:03:00) [4]

Предлагаю еще более простой вариант - используй DatePart

Запрос за август 2004:

SELECT * FROM db_astra
WHERE DatePart(yyyy,f_date)=2004 and DatePart(mm,f_date)=8
ORDER BY data


Anatoly Podgoretsky   (2004-08-15 12:37:00) [5]

jack128 ©   (15.08.04 12:24) [8]
Как он сказал, интервал для него очень сложно :-) Так что у него другого пути не остается.


jack128   (2004-08-15 12:24:00) [6]


> Можно, если использовать Extract


> select * from buzdey
> where extract(mounth from data) = :mydata

а год кто указывать будет? К тому же меня берут сомнения по поводу того используется ли индекс при конструкции extract(mounth from data).  Правда если записей удволитворяющих условию extract(year from data) = 2004 не много, то на это можно плюнуть..В общем по ситуации..


Ted   (2004-08-15 10:36:00) [7]

select * from buzdey
where extract(mounth from data) = :mydata


Anatoly Podgoretsky   (2004-08-15 08:18:00) [8]

Можно, если использовать Extract


Fantasy   (2004-08-15 02:22:00) [9]

Большое спосибо jack128
думаю дальше разберу.


jack128   (2004-08-15 02:20:00) [10]


> так нужно знать число дней каждого месяца
массив SysUtils.MonthDays

> нельзя ли проще чтобы только номер месяца задать ?
нет.


Fantasy   (2004-08-15 02:13:00) [11]

так нужно знать число дней каждого месяца
нельзя ли проше чтобы только номер месяца задать ?


jack128   (2004-08-15 02:10:00) [12]

это для IB. Униврсальное решение если использушь BDE или ADO - параметры


jack128   (2004-08-15 02:09:00) [13]

where myDate >= cast('2004/02/01' as timestamp) and myDate <= cast('2004/02/28' as timestamp)


Наверх

Титульная страница Поиск, карта сайта Написать письмо