Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
как получить выборку по пяти ближайшим датам?
(в таблице - дата, человек, инфа и т. д.)
не просто пять первых полей, а именно все поля, где даты - 5 ближайших
15 июл 04, 14:01    [809457]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Владимир Саныч
Member

Откуда: Израиль (причем это 1 человек, а не 2 => прошу на ты)
Сообщений: 40414
... top 5 ...
where mydate > date()
order by mydate
15 июл 04, 14:03    [809472]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 5500
Думаю, что так будет точнее:

where mydate >= Crit_date

или совсем без where
15 июл 04, 14:11    [809520]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Владимир Саныч
Member

Откуда: Израиль (причем это 1 человек, а не 2 => прошу на ты)
Сообщений: 40414
Вопрос, является ли сегодняшняя дата ближайшей.
15 июл 04, 14:13    [809532]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
пасиб 8)

сегодняшняя дата является ближайшей

но не работает
дает по одной ближайшей дате все строки
у меня там еще перекрестных таблиц есть немного
вот:

SELECT TOP 5 Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
FROM Firms INNER JOIN (Hotels INNER JOIN (Groupes INNER JOIN Paxes ON Groupes.groupId = Paxes.PaxGroup) ON Hotels.hotelId = Groupes.groupHotelName) ON Firms.firmID = Groupes.groupFirm
WHERE (((Groupes.groupDateArrive)>=[Forms]![frm5]![Text0]) AND ((Groupes.groupAnnulee)=0))
GROUP BY Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
ORDER BY Groupes.groupDateArrive;
15 июл 04, 15:03    [809853]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
Pretorian
пасиб 8)

сегодняшняя дата является ближайшей

но не работает
дает по одной ближайшей дате все строки
у меня там еще перекрестных таблиц есть немного
вот:


WHERE (((Groupes.groupDateArrive)>=[Forms]![frm5]![Text0]) AND ((Groupes.groupAnnulee)=0))


а на какую форму ты ссылаешь? просто Now() не катит? вернее даже так лучше
WHERE (((Groupes.groupDateArrive) Between (Now()) AND (Now()+5)
15 июл 04, 15:08    [809878]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 5500
Это неправильный запрос: ты пытаешься выбрать 5 первых групп, а не 5 первых
дат! Сначала надо определиться с датами. Что значит ближайших дат?
Предположим, есть даты с 1 по 31 июля, а сегодня 15-е Какие даты будут интересны? с 10 по 20? Или с 12(13) по 17(18)? А может быть 1-5 или 26-31?
15 июл 04, 15:57    [810176]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2SBL

нет, не катит
нужно иметь возможность менять дату
с формой все в порядке
и это не относится к вопросу 8)

2Rivkin Dmitry

сегодня 15 июля
будут интересны все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей
15 июл 04, 16:29    [810376]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
Pretorian
2SBL

нет, не катит
нужно иметь возможность менять дату
с формой все в порядке
и это не относится к вопросу 8)

2Rivkin Dmitry

сегодня 15 июля
будут интересны все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей


имхо, почему не катит не понял, если запрос выполнять каждый день то он и будет выдавать группы где аррдейт между сегодняшней и сегодня+5......
15 июл 04, 16:36    [810422]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2SBL
в форме есть возможность сменить дату на любую интересующую
впрочем, как я уже сказал, это не важно

мне важно, чтоб выборка работала 8)
15 июл 04, 16:38    [810436]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 5500
Что-то быстро не соображу, но кажется так:

SELECT Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
FROM Firms INNER JOIN (Hotels INNER JOIN (Groupes INNER JOIN Paxes ON Groupes.groupId = Paxes.PaxGroup) ON Hotels.hotelId = Groupes.groupHotelName) ON Firms.firmID = Groupes.groupFirm
WHERE (((Groupes.groupDateArrive) BETWEEN [Forms]![frm5]![Text0] AND [Forms]![frm5]![Text0] + 5) AND ((Groupes.groupAnnulee)=0))
GROUP BY Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
ORDER BY Groupes.groupDateArrive
15 июл 04, 16:46    [810474]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
Rivkin Dmitry
Что-то быстро не соображу, но кажется так:

SELECT Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
FROM Firms INNER JOIN (Hotels INNER JOIN (Groupes INNER JOIN Paxes ON Groupes.groupId = Paxes.PaxGroup) ON Hotels.hotelId = Groupes.groupHotelName) ON Firms.firmID = Groupes.groupFirm
WHERE (((Groupes.groupDateArrive) BETWEEN [Forms]![frm5]![Text0] AND [Forms]![frm5]![Text0] + 5) AND ((Groupes.groupAnnulee)=0))
GROUP BY Groupes.groupDateArrive, Firms.firmName, Groupes.groupId, Paxes.paxName, Hotels.hotelName
ORDER BY Groupes.groupDateArrive


только вот [Forms]![frm5]![Text0] + 5 в скобках имхо должно быть
15 июл 04, 16:47    [810486]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 5500
Не понял :(
автор
только вот [Forms]![frm5]![Text0] + 5 в скобках имхо должно быть


Где скобки, какие скобки? Можа скрепки подойдут? Или эти, как их PushPins?
15 июл 04, 16:53    [810522]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2Rivkin Dmitry

да нет же!!!!
нужно не все даты, которые будут в ближайшие пять дней, а все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей!!!!!
15 июл 04, 17:00    [810562]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
то есть, если есть записи только на 15, 16, 17, 18, 30 и 31 июля, то нужно записи за 15, 16, 17, 18 и 30!!!! июля
15 июл 04, 17:01    [810569]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
а слабо выборка первых пяти значений начиная с сегодняшней даты? дата отсортирована в возрастающем порядке.......
15 июл 04, 17:09    [810618]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2SBL

вот об этом я и спрашиваю!
как это сделать???
15 июл 04, 17:12    [810632]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
хммм.......надеюсь что это тебя наведет на умные мысли

Select TOP 5 Table1.Dates
From Table1
Where Dates>=Now()
Order by Dates ASC


вроде так.........
15 июл 04, 17:17    [810661]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
да,точно так, проверил тут под рукой кое что было....... :-)
15 июл 04, 17:21    [810683]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2SBL

а теперь посмотри 15:03
15 июл 04, 17:23    [810704]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
Pretorian
2SBL

а теперь посмотри 15:03


имхо, а в какой таблице у тебя даты прибытия? не пробовал оттуда джойн начинать?
15 июл 04, 17:27    [810733]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Pretorian
Member

Откуда:
Сообщений: 710
2SBL

о! вот это уже по делу
сейчас проверю...
15 июл 04, 17:29    [810742]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
и Гроуп бу выкинь нах....
15 июл 04, 17:31    [810754]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
SBL
Member

Откуда: Tallinn
Сообщений: 666
Pretorian
2SBL

о! вот это уже по делу
сейчас проверю...


лучше выкинь груп бу, а проверять беспонту, я проверил - все равно пашет, вот файл образец.......

там конечно джойнов поменьше, но можешь посмотреть как оно все выглядит...

Query2

К сообщению приложен файл (db2.zip - 10Kb) cкачать
15 июл 04, 17:33    [810763]     Ответить | Цитировать Сообщить модератору
 Re: ограничение выборки  [new]
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 5500
Это очень важный момент, что такое ближайшие 5 дней. Без понимания этого нельзя даже начинать строить запрос!!!
Что мы имеем от автора?
автор
сегодня 15 июля
будут интересны все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей

Исходя из этого я и поправлял запрос. Теперь выясняется, что это не так. Так как же правильно?
15 июл 04, 17:49    [810859]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить