powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ограничение выборки
51 сообщений из 51, показаны все 3 страниц
ограничение выборки
    #32605943
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как получить выборку по пяти ближайшим датам?
(в таблице - дата, человек, инфа и т. д.)
не просто пять первых полей, а именно все поля, где даты - 5 ближайших
...
Рейтинг: 0 / 0
ограничение выборки
    #32605953
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
... top 5 ...
where mydate > date()
order by mydate
...
Рейтинг: 0 / 0
ограничение выборки
    #32605985
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, что так будет точнее:

where mydate >= Crit_date

или совсем без where
...
Рейтинг: 0 / 0
ограничение выборки
    #32605992
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Вопрос, является ли сегодняшняя дата ближайшей.
...
Рейтинг: 0 / 0
ограничение выборки
    #32606182
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пасиб 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;
...
Рейтинг: 0 / 0
ограничение выборки
    #32606197
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorianпасиб 8)

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

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


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


а на какую форму ты ссылаешь? просто Now() не катит? вернее даже так лучше
WHERE (((Groupes.groupDateArrive) Between (Now()) AND (Now()+5)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606372
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это неправильный запрос: ты пытаешься выбрать 5 первых групп, а не 5 первых
дат! Сначала надо определиться с датами. Что значит ближайших дат?
Предположим, есть даты с 1 по 31 июля, а сегодня 15-е Какие даты будут интересны? с 10 по 20? Или с 12(13) по 17(18)? А может быть 1-5 или 26-31?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606480
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL

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

2Rivkin Dmitry

сегодня 15 июля
будут интересны все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей
...
Рейтинг: 0 / 0
ограничение выборки
    #32606506
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorian2SBL

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

2Rivkin Dmitry

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

имхо, почему не катит не понял, если запрос выполнять каждый день то он и будет выдавать группы где аррдейт между сегодняшней и сегодня+5......
...
Рейтинг: 0 / 0
ограничение выборки
    #32606511
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL
в форме есть возможность сменить дату на любую интересующую
впрочем, как я уже сказал, это не важно

мне важно, чтоб выборка работала 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606530
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
...
Рейтинг: 0 / 0
ограничение выборки
    #32606540
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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 в скобках имхо должно быть
...
Рейтинг: 0 / 0
ограничение выборки
    #32606563
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял :(
автортолько вот [Forms]![frm5]![Text0] + 5 в скобках имхо должно быть

Где скобки, какие скобки? Можа скрепки подойдут? Или эти, как их PushPins?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606591
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Rivkin Dmitry

да нет же!!!!
нужно не все даты, которые будут в ближайшие пять дней, а все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей!!!!!
...
Рейтинг: 0 / 0
ограничение выборки
    #32606595
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть, если есть записи только на 15, 16, 17, 18, 30 и 31 июля, то нужно записи за 15, 16, 17, 18 и 30!!!! июля
...
Рейтинг: 0 / 0
ограничение выборки
    #32606622
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а слабо выборка первых пяти значений начиная с сегодняшней даты? дата отсортирована в возрастающем порядке.......
...
Рейтинг: 0 / 0
ограничение выборки
    #32606633
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL

вот об этом я и спрашиваю!
как это сделать???
...
Рейтинг: 0 / 0
ограничение выборки
    #32606653
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хммм.......надеюсь что это тебя наведет на умные мысли

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


вроде так.........
...
Рейтинг: 0 / 0
ограничение выборки
    #32606671
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да,точно так, проверил тут под рукой кое что было....... :-)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606688
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL

а теперь посмотри 15:03
...
Рейтинг: 0 / 0
ограничение выборки
    #32606700
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorian2SBL

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

имхо, а в какой таблице у тебя даты прибытия? не пробовал оттуда джойн начинать?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606706
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL

о! вот это уже по делу
сейчас проверю...
...
Рейтинг: 0 / 0
ограничение выборки
    #32606714
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и Гроуп бу выкинь нах....
...
Рейтинг: 0 / 0
ограничение выборки
    #32606718
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorian2SBL

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

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

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

Query2
...
Рейтинг: 0 / 0
ограничение выборки
    #32606777
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это очень важный момент, что такое ближайшие 5 дней. Без понимания этого нельзя даже начинать строить запрос!!!
Что мы имеем от автора?
авторсегодня 15 июля
будут интересны все 5 следующих дат (включая сегодня), на которые ЕСТЬ ЗАПИСИ
и нужна выборка ВСЕХ этих записей
Исходя из этого я и поправлял запрос. Теперь выясняется, что это не так. Так как же правильно?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606799
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SBL
все равно не работает
твой пример я не понял
мне бы со своим разобраться

2Rivkin Dmitry
ты меня не понял
сейчас попробую переобъяснить:

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

то есть, если есть записи только на 15, 16, 17, 18, 30 и 31 июля, то нужно записи за 15, 16, 17, 18 и 30!!!! июля
...
Рейтинг: 0 / 0
ограничение выборки
    #32606811
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по-моему, логика очень проста 8)
я просто никак с синтаксисом не разберусь

оператору нужно иметь возможность ввести в форму дату (по умолчанию - сегодняшняя) и получить 5 ближайших заездов
даже если ближайшие заезды раскиданы по 10 следующим годам 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606819
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такой запрос:
Код: plaintext
1.
2.
3.
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 (( Abs(DateDiff("d", Groupes.groupDateArrive, [Forms]![frm5]![Text0]))<= 5  ) AND ((Groupes.groupAnnulee)= 0 ))
ORDER BY Groupes.groupDateArrive

должен вернуть все записи которые отличаются от даты, записанной в [Forms]![frm5]![Text0] на 5 дней (как в сторону уменьшения, так и увеличения).
Как идея.
...
Рейтинг: 0 / 0
ограничение выборки
    #32606847
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хорошо, тогда давай так, сделай сначала тоже самое как я тебе давал для двух таблиц, в одной из которых будет дата заезда а другая - да любая связанная с этой, если работает, тогда надо потихоньку будет достраивать
если нет, то баговая база какая то..........

а вообще, я бы нафиг джойны выкинул...........
...
Рейтинг: 0 / 0
ограничение выборки
    #32606852
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Rivkin Dmitry
что за diff и d?
не работает

2SBL
база нормальная
что такое джоинты я не знаю, поэтому выкидывать побаиваюсь 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606854
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можешь в аську вылезти?
199023858
...
Рейтинг: 0 / 0
ограничение выборки
    #32606858
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поспешил, не прочитал ответ. Пусть как идея и остается.
А такой вариант:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
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 IN (SELECT TOP  5  Groupes.groupDateArrive 
FROM Groupes 
WHERE Groupes.groupDateArrive>=[Forms]![frm5]![Text0]
GROUP BY Groupes.groupDateArrive 
ORDER BY Groupes.groupDateArrive )) AND ((Groupes.groupAnnulee)= 0 ))
ORDER BY Groupes.groupDateArrive
...
Рейтинг: 0 / 0
ограничение выборки
    #32606864
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
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 IN (SELECT TOP  5  Groupes.groupDateArrive 
FROM Groupes 
WHERE Groupes.groupDateArrive>=[Forms]![frm5]![Text0]
GROUP BY Groupes.groupDateArrive 
ORDER BY Groupes.groupDateArrive )) AND ((Groupes.groupAnnulee)= 0 ))

прицепилась лишняя строка... :(
...
Рейтинг: 0 / 0
ограничение выборки
    #32606869
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Rivkin Dmitry

бинго!
почему лишняя? там же подзапрос!
я так и думал, что нужен подзапрос, но соклько не пытался, не смог победить синтаксис 8)
СПАСИБАААА! 8)

2SBL
уже работает!
и тебе спасибо, что парился 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606881
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не за что, а без джойнов обойтись в принципе просто :-)
в where пихаешь то что в джойне после ON было, да From идет через запятую перечисление таблиц, намного проще работать :-)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606886
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лишняя, потому, что на главный запрос не надо делать группу. Насколько я уловил в твоем запросе - это ни к чему. А впрочем проверь с ней и без нее, должно быть одно и то же.
Запарки могло бы не получится, если бы вопрос был заранее продуман и правильно сформулирован. По себе знаю, как только начинаешь думать, как сформулировать вопрос, чтобы каждому ежу была понятна проблема, так уже на половину задачу решил. А иногда и на все 100!

Удачи!
...
Рейтинг: 0 / 0
ограничение выборки
    #32606896
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SBLне за что, а без джойнов обойтись в принципе просто :-)
в where пихаешь то что в джойне после ON было, да From идет через запятую перечисление таблиц, намного проще работать :-)

Может быть и проще, но не уверен, что быстрее. Зависит, конечно от ситуации, но в большинстве случаев такое представление приводит к полному Декартову произведению и количество строк для выборки увеличивается катострофическим образом. Я бы не советовал. И мастера построения запросов автоматически рисуют джоины, думаю, что не с проста! Хотя я тут не очень силен. Лучше пообщаться на форуме SQL Server
...
Рейтинг: 0 / 0
ограничение выборки
    #32606909
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rivkin Dmitry SBLне за что, а без джойнов обойтись в принципе просто :-)
в where пихаешь то что в джойне после ON было, да From идет через запятую перечисление таблиц, намного проще работать :-)

Может быть и проще, но не уверен, что быстрее. Зависит, конечно от ситуации, но в большинстве случаев такое представление приводит к полному Декартову произведению и количество строк для выборки увеличивается катострофическим образом. Я бы не советовал. И мастера построения запросов автоматически рисуют джоины, думаю, что не с проста! Хотя я тут не очень силен. Лучше пообщаться на форуме SQL Server

ессно что зависит от базы........а мастера - хз, неудобные они......ручками как то проще.....
и потом, если база связана только рисуют, а если взять два поля между которыми нет relationship то не рисуют вообще ничего :-) пусть у них и будет поле общим :-)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606924
SBL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но по идее да......переборка там должна быть побольше........
...
Рейтинг: 0 / 0
ограничение выборки
    #32606933
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, строка не важна
спасибо, Дмитрий!
хорошие в Израиле програмеры 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606937
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorianда, строка не важна
спасибо, Дмитрий!
хорошие в Израиле програмеры 8)

Добро пожаловать!
Росли-то мы где?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606950
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не согласен, что мастера (wizards) не удобные. Query Builder, по-моему, хорошая вещь! И связи он хорошо проставляет, если таблицы продуманы и первичные ключи имеются и поля названы логично и во всех таблицах одинаково. А ручками хорошо, когда надо что-то динамичное склепать, параметры, скажем, приклеить или критерии менять динамично, тогда, конечно, ни один чародей не поможет. Но первичный запрос я предпочитаю клепать в Query Builder. Там его и опробовать и обкатать удобно.
...
Рейтинг: 0 / 0
ограничение выборки
    #32606952
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
короче, хороший программер - он и в Африке программер 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606955
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pretorianкороче, хороший программер - он и в Африке программер 8)
Точно попал! До сих пор сомневаюсь, в Азии ли живу? Не Африка ли Аравийский наш полуостров..
...
Рейтинг: 0 / 0
ограничение выборки
    #32606959
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Rivkin DmitryНе Африка ли Аравийский наш полуостров..
Попробуй не Аравийский полуостров, а Балканский. Может, Израиль там?
...
Рейтинг: 0 / 0
ограничение выборки
    #32606971
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
черт, так куды ж задевалась эта хитрая страна? 8)
...
Рейтинг: 0 / 0
ограничение выборки
    #32606997
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч Rivkin DmitryНе Африка ли Аравийский наш полуостров..
Попробуй не Аравийский полуостров, а Балканский. Может, Израиль там?
Пробую:
Точно попал! До сих пор сомневаюсь, в Азии ли живу? Не Африка ли Балканский наш полуостров..

Саныч, ты не сомневайся, я БаАрец нормально живу и страну уважаю. Шутки у меня, возможно, дурацкие, но не по злобе...
...
Рейтинг: 0 / 0
ограничение выборки
    #32607004
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Раша тоже - и не Европа и не Азия.
Какая разница?
Главное - хвост!
...
Рейтинг: 0 / 0
ограничение выборки
    #32607017
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чей хвост?
...
Рейтинг: 0 / 0
ограничение выборки
    #32607047
Pretorian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм
думаю, без разницы, чей 8)
мультик такой был в детстве 8))))
...
Рейтинг: 0 / 0
ограничение выборки
    #32607057
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там хвостик был ослиный...
...
Рейтинг: 0 / 0
51 сообщений из 51, показаны все 3 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ограничение выборки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]