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

Вниз

Как в Delphi7 SQL-запросе сделать условие с использованием функци   Найти похожие ветки 

 
DVP1   (2003-08-21 10:25) [0]

Как в Delphi7 SQL-запросе сделать условие с
использованием функции: есть поле Date (формата "DD.MM.YYYY") - в нем даты. Нужно отобрать записи,у которых месяц = текущему.
Подскажите, пожалуйста, как это сделать.


 
Smithson ©   (2003-08-21 10:35) [1]

where to_char(DATE) like "%.08.%"

ну и вместо 08 подставляй номер текущего месяца


 
Семен Сорокин ©   (2003-08-21 10:39) [2]

для MSSQL:
where month(date) = month(getdate())
или
where datepart(mm, date) = datepart(mm, getdate())


 
dez ©   (2003-08-21 10:40) [3]

этот запрос можно использовать в дельфях для MS SQL Server (там есть ф-я Month).
SELECT * FROM Table WHERE Month(DATEFIELD) = Month(:date)


 
DVP1   (2003-08-21 10:55) [4]

СПАСИБО!!!! - заработало!!!


 
DVP1   (2003-08-21 11:06) [5]

Извиняюсь, не совсем заработало - пишет, что Invalid use of keyword month(Date)


 
Семен Сорокин ©   (2003-08-21 11:11) [6]

субд?


 
Sandman25   (2003-08-21 11:11) [7]

Вместо date надо написать имя поля. Если поле называется date, надо его переименовать - не стоит использовать зарезервированное слово в качестве идентификатора.


 
sniknik ©   (2003-08-21 11:12) [8]

все дело в волшебных пузырьках, без них ни один запрос не заработает.

и совсем не зависит от типа SQL server-а (скажут такое не верь!).

p.s. пузырьки продаются практически в любом магазине.


 
sniknik ©   (2003-08-21 11:13) [9]

ну вот опоздал. :-((

ни в коем случае не отвечай > Семен Сорокин © (21.08.03 11:11) [6]
(он тебя с истиного пути сбивает)


 
Семен Сорокин ©   (2003-08-21 11:14) [10]

sniknik © (21.08.03 11:13) [9]
:))


 
DVP1   (2003-08-21 11:27) [11]

Естественно, поле называется у меня "BirthDate"
в запросе у меня было так:
where month(BirthDate) = month(getdate())


 
Семен Сорокин ©   (2003-08-21 11:32) [12]

DVP1 (21.08.03 11:27) [11]
см. [6]
ЗЫ:
- доктор меня все игнорируют.
- следующий


 
sniknik ©   (2003-08-21 11:34) [13]

;о(((
нэ догадался... тогда с прискорбием имею вам сообщить - задача в вашем исполнении не имеет решения.


 
DVP1   (2003-08-21 11:36) [14]

To Семен Сорокин:
SQL-server отсутствует, а какое СУБД надо, собственно говоря, вместо SQL-server"a?


 
Семен Сорокин ©   (2003-08-21 11:38) [15]

глянь сюда: http://www.delphimaster.ru/forum/add-1.html и выбери твой тип БД. Если там такого нет, тогда sniknik © (21.08.03 11:34) [13]


 
DVP1   (2003-08-21 11:46) [16]

Специально СУБД не устанавливали, а работаю я с dBase....


 
Семен Сорокин ©   (2003-08-21 11:53) [17]

попрообуй, вроде xBase поддерживает month и date
where month(BirthDate) = month(date())


 
DVP1   (2003-08-21 12:09) [18]

Опять пишет что Invalid use of keyword month(BIRTHDATE),
а причем здесь xBase? - к 1С эта программа никак не относится


 
Семен Сорокин ©   (2003-08-21 12:19) [19]

как вариант:
where birthdate > :date1 and birthdate < :date2
где date1 - последнее число предыдущего месяца, а date2 - первое число следующего месяца :))


 
sniknik ©   (2003-08-21 12:25) [20]

> Специально СУБД не устанавливали, а работаю я с dBase....
ну хоть чтото конкретное, можно еще предположить что используется BDE, и послать ... в Local SQL help. ;о))

где найдется примерно следующее
SELECT DOB, LastName, FirstName
FROM People
WHERE (EXTRACT(MONTH FROM DOB) = 5)
(можеш использовать, копирайтов нет ;о)))


 
DVP1   (2003-08-21 12:39) [21]

WHERE (EXTRACT(MONTH FROM BIRTHDATE) = 5) - так работает, но у меня вместо "5" должен быть текущий месяц- как его получить в запросе?


 
sniknik ©   (2003-08-21 13:42) [22]

передавай значение из дельфей (к примеру параметром), в Local SQL нет функции текущей даты.

(можно конечно по другому,поменять движок на Jet к примеру, там есть, но стоит ли?)



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

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

Наверх




Память: 0.51 MB
Время: 0.014 c
1-10761
Micah'GF
2003-08-23 20:57
2003.09.04
Отвести память под текст


6-10866
SPeller
2003-06-29 07:08
2003.09.04
GetHostByName или


1-10669
VladimirES
2003-08-21 12:33
2003.09.04
Клиент/сервер приложение на СОМ/DCOM (общие вопросы)


1-10802
Evgfat
2003-08-22 10:07
2003.09.04
Создание отчета в Делфи


4-11028
D.J.Star
2003-07-03 13:10
2003.09.04
Как проиграть PlaySound ом поток из памяти?