Форум: "Базы";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];
ВнизПомогите с запросом Найти похожие ветки
← →
Yurko (2004-02-06 11:30) [0]В таблице есть поля Date_ (дата) и Days_ (целое).
Как выбрать записи, где к Date_ осталось Days_ дней относительно текущей даты?
← →
Sandman25 (2004-02-06 11:34) [1]where date_ + days = текущая дата
если не пропустит, то можно
where cast((cast(date_ as integer)+days) as date) = текущая дата
Если в Access есть что-то типа dateadd(dd, days, date_), то еще лучше.
← →
Yurko (2004-02-06 11:44) [2]а как в SQL получить текущую дату?
← →
Sandman25 (2004-02-06 11:50) [3]Есть много вариантов, смотрите документацию к Access.
Current_Date
getdate()
today
← →
ЮЮ (2004-02-06 11:50) [4]B MS - GetDate(), может и в Access тоже
← →
Yurko (2004-02-06 12:56) [5]Ничего не получается!
А как выбрать записи, где к Date_ осталось Days_..0 дней, без учёта года?
Или дайте, пожалуйста, ссылку на соответствующую документацию, нигде не могу найти примеров.
← →
Sandman25 (2004-02-06 13:01) [6]Что значит без учета года?
28 февраля. Сколько остается до 1 марта? 1 день или 2?
Если доступ через BDE, посмотрите EXTRACT в LocalSQL.hlp
← →
Yurko (2004-02-06 13:23) [7]Доступ через ADO.
Вот, хороший пример придумал:
есть таблица с именами, датами рождения и количеством дней, на протяжении которых надо напоминать, что у человека день рождения.
Как выбрать тех людей к чьему дню рождения осталось Days_..0 дней?
Помогитие, пожалуйста!
← →
Sandman25 (2004-02-06 13:25) [8]Разве в Access нет функций, извлекающих день или месяц из даты?
Day, Month?
← →
Yurko (2004-02-06 14:21) [9]Все равно, не получается получить текущую дату, Access ругается.
← →
Johnmen (2004-02-06 14:24) [10]Еще раз привожу...:)
Именниники на неделю вперёд
===========================
SELECT * FROM Table
WHERE EXTRACT(DAY FROM Born)+100*EXTRACT(MONTH FROM Born)
BETWEEN
EXTRACT(DAY FROM CAST("TODAY" AS DATE)+1)+
100*EXTRACT(MONTH FROM CAST("TODAY" AS DATE)+1)
AND
EXTRACT(DAY FROM CAST("TODAY" AS DATE)+7)+
100*EXTRACT(MONTH FROM CAST("TODAY" AS DATE)+7)
← →
Yurko (2004-02-06 14:55) [11]Спасибо!!!
← →
Johnmen (2004-02-06 14:58) [12]Да не за что...
Интерено просто как это "выглядит" для аксеса.
← →
Yurko (2004-02-06 16:37) [13]Задолбал этот аксес....
пишу:
SELECT Name_,Date_,EXTRACT(DAY FROM Date_) AS DD
FROM Table
а аксес говорит: "Неопознанная ошибка."
если так:
SELECT Name_,Date_
FROM Table
то все нормально.
Чем ему (аксесу) не нравится EXTRACT?
← →
Yurko (2004-02-09 09:56) [14]Мастера, скажите, пожалуйста, что использовать в Access вместо EXTRACT?
← →
paul_k (2004-02-09 10:06) [15]в Акссесе есть функции
date () текущая дата
DateAdd («interval»; «number»; «date») - дата + интервал
в даном случае можно написать
where DateAdd("dd",Days_,Date_)=date()
или посмотреть в хелпе описание функции DateDiff
← →
paul_k (2004-02-09 10:07) [16]А если хочется идти через тернии по пути
Johnmen © (06.02.04 14:58) [12]
то почитать про функцию DatePart()
← →
Johnmen (2004-02-09 10:15) [17]>paul_k © (09.02.04 10:07)
Это просто схема. В чем тернии ?
← →
paul_k (2004-02-09 10:27) [18]2Johnmen
тернии в том что во многие сервера данных встроены перечисленные мною функции работы с датой. Согласен с тем, что сервер сам выполнит некий процесс сходный с указаннымс Вами. но зачем самому то это расписывать.
2 Yurko
кстати в акссесе если строить запрос в конструкторе есть такая кнопочка "построить выражение" и в построителе очень удобный навигатор по полям / функциям
← →
Yurko (2004-02-09 10:29) [19]Ну-ну! Не ругайтесь! Способ Johnmen © прекрасно работает в Paradox(BDE), например. Кто виноват, что Access не признает EXTRACT?
← →
Yurko (2004-02-09 10:31) [20]2 paul_k
Большое спасибо !!!
← →
paul_k (2004-02-09 10:36) [21]
> Yurko (09.02.04 10:29) [19]
> Кто виноват, что Access не признает EXTRACT?
Признает.. только он не Extract называется, а DatePert()
← →
paul_k (2004-02-09 10:37) [22]простите DataPart()
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.039 c