Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2010, 12:19   #1
Jeid
Пользователь
 
Регистрация: 18.08.2010
Сообщений: 15
По умолчанию Групировка по полю в MS ACCESS

Добрый день, есть проблема с запросом из трех таблиц, пытаюсь сделать группировку по полю, он ругается что для других полей надо тоже использовать какие-либо функции.

Извратился, сделал так, но это не очень подходит если пользователь введёт разные даты. :

SELECT users.name, users.zvanie, users.orderFrom, rooms.name AS room_name, t1.dtFrom, t1.dtTo
FROM users, rooms, (select max(vacations.date_from) as dtFrom, max(vacations.date_to) as dtTo, vacations.user_id from vacations group by user_id) AS t1
WHERE users.room_id = rooms.id and t1.user_id = users.id;

Таблицы:
users
id, name, room_id

rooms
id, name

vaactions
id, user_id, date_from, date_to

т.е надо чтобы он выводил список всех пользователей с названиями комнат в которых они находятся и с датой последнего отпуска из таблицы vacations. пробовал делать group by vacations.user_id и сортировать по date_from но как уже писал выше ругается что по остальным полям нет
"Попытка выполнить запрос который не включает указанное выражение 'поле' как часть статической функции или группы"
Jeid вне форума Ответить с цитированием
Старый 12.09.2010, 12:56   #2
_Engine_
Форумчанин
 
Регистрация: 29.06.2008
Сообщений: 603
По умолчанию

Вот выдержка из справки:
Цитата:
При использовании предложения GROUP BY все поля в списке полей инструкции SELECT должны быть либо включены в предложение GROUP BY, либо использоваться в качестве аргументов статистической функции SQL.
_Engine_ вне форума Ответить с цитированием
Старый 12.09.2010, 13:13   #3
Jeid
Пользователь
 
Регистрация: 18.08.2010
Сообщений: 15
По умолчанию

Это я понял. тока вот как бы мне тогда выполнить такой запрос чтобы вернул то что мне необходимо
Jeid вне форума Ответить с цитированием
Старый 12.09.2010, 14:38   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) сделайте тестовую БД с нужными таблицами, заполните данными, запакуйте и выложите архив сюда

2) попытайтесь сформулировать, чем именно Ваш запрос Вас не устраивает (в том виде, в каком он написан в пост #1) (желательно свой ответ проиллюстрировать примером данных: что есть, что возвращает запрос и что нужно получить.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск по полю таблицы БД MS Access в Делфи - приложении. _42 Помощь студентам 0 20.04.2010 18:43
Групировка значений и их сумма, но с условием psbad Microsoft Office Excel 23 19.11.2009 11:00
Сортировка по полю [Smarik] SQL, базы данных 1 08.05.2009 20:27
Сортировка по полю! Lazio Общие вопросы C/C++ 3 17.03.2009 19:13
Групировка Gawwws Microsoft Office Excel 3 30.10.2008 14:15