Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Фильтр по дате   Найти похожие ветки 

 
kalishenko   (2004-04-14 13:20) [0]

Как составить фильтр по дате так, чтобы отбирались данные по конкретному месяцу?


 
serge35   (2004-04-14 13:23) [1]

select * from a
where substr(a.date,4,2) = 12 (номер месяца)

Я провда не уверен, что Paradox поймет substr.


 
Anatoly Podgoretsky ©   (2004-04-14 13:30) [2]

А в каком году или эти данные за несколько лет?


 
human   (2004-04-14 13:30) [3]

попробуй так
select *
from table
where date like "__.12%" --12 номер месяца


 
kalishenko   (2004-04-14 13:39) [4]

Да нет, не понимает. Возможно ли вообще применение функций в фильтрах?


 
sniknik ©   (2004-04-14 13:42) [5]

а больше/меньше нельзя поставить? больше одного значения(начало месяца) и меньше другого(начало следующего).


 
kalishenko   (2004-04-14 13:43) [6]

>>where date like "__.12%" --12 номер месяца

По-моему опреатор like работает только со строками.

>>А в каком году или эти данные за несколько лет?

К примеру, текущего года.


 
Anatoly Podgoretsky ©   (2004-04-14 13:43) [7]

sniknik ©   (14.04.04 13:42) [5]
А он молчит про годы, наверно ответ не нужен.


 
Vlad ©   (2004-04-14 13:45) [8]


> kalishenko   (14.04.04 13:39) [4]

Вроде в LocalSql была функция Extract
т.е. что-то вроде
SELECT * from Table
WHERE (EXTRACT(MONTH FROM DateField) = 1)
Будет январь за все года.


 
Anatoly Podgoretsky ©   (2004-04-14 13:45) [9]

Тогда ункция Extract два раза - на нужный месяц и на нужный год, от фильтра отказаться в пользу запроса.
Альтернативой использование метода OnFilterRecord


 
Anatoly Podgoretsky ©   (2004-04-14 13:49) [10]

Если от фильтра не хочешь отказываться, то тогда динамически сформировать две даты 1.MM.YYYY и Last.MM.YYYY, затем фильтр следующего вида D>=D1 and D<=D2, но запрос оптимальнее, при том параметрический


 
kalishenko   (2004-04-14 13:51) [11]

Все равно ругается. Что не так?

select *
from info
where (extract(month from date) = 4),

где date - поле типа TDateTime
   4 - апрель-месяц


 
sniknik ©   (2004-04-14 13:56) [12]

date зарезервированное слово. в чистом виде его так запрос не вставить.

а это ничего что запрос выберет не конкретный месяц а сквозной за все годы? и индекс не используя (если есть), тоесть тормоза в программе закладываются изначально.


 
kalishenko   (2004-04-14 14:00) [13]

>>а это ничего что запрос выберет не конкретный месяц а сквозной за все годы? и индекс не используя (если есть), тоесть тормоза в программе закладываются изначально.

C годами нет проблем - если отловлю месяцы, то и отловлю и годы. А индексов нет.


 
Vlad ©   (2004-04-14 14:01) [14]


> Все равно ругается. Что не так?

Матом чтоли ругается ?
Текст ошибки в студию


 
kalishenko   (2004-04-14 14:07) [15]

Все всем спасибо за сплоченность. Sniknik был прав ("date зарезервированное слово. в чистом виде его так запрос не вставить"). Запрос выглядит так:

select *
from info
where (extract(month from info."date") = 04)

Осталось добавить года - это уже проще пареной репы.

Еще раз спасибо.



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.087 c
3-1079102146
student
2004-03-12 17:35
2004.04.11
ошибка БДЕ 210С


1-1082436256
R
2004-04-20 08:44
2004.04.11
Локальную и много или нет но одну?


7-1076071597
Davey
2004-02-06 15:46
2004.04.11
Имя пользователя, запустившего процесс, как в Task Manager e в ХР


1-1080130326
Th
2004-03-24 15:12
2004.04.11
Библиотека строковых функций


14-1082121118
John Doe
2004-04-16 17:11
2004.04.11
Где найти серьезные книги