Форум: "Основная";
Текущий архив: 2003.09.04;
Скачать: [xml.tar.bz2];
ВнизКак в 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;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c