Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает поиск min значения в запросе имеющий вложенный запрос / 9 сообщений из 9, страница 1 из 1
21.10.2016, 16:00
    #39331726
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
Добрый день!
Возможно ли в этом запросе сделать так чтобы он возвращал мин. значение из столбца Min-id_4_Mail

Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT [1_Base].[1_id], [1_Base].[1_compani], Min([4_Mail].id_4_Mail) AS [Min-id_4_Mail], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]) AS Выражение1
FROM (1_Base LEFT JOIN 3_Theme_Delivery ON [1_Base].[1_type] = [3_Theme_Delivery].category_recipient_3_Theme_Delivery) LEFT JOIN 4_Mail ON [3_Theme_Delivery].id_3_Theme_Delivery = [4_Mail].id_3_Theme_Delivery
GROUP BY [1_Base].[1_id], [1_Base].[1_compani], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])
HAVING ((([1_Base].[1_id])=50612) AND ((CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])) Not In (SELECT CLng([5_History_Mail]![5_id_1]  & [5_History_Mail]![id_4_mail_5_theme]) AS id_number
FROM 2_cities INNER JOIN (1_Base LEFT JOIN 5_History_Mail ON [1_Base].[1_id] = [5_History_Mail].[5_id_1]) ON [2_cities].[2_id] = [1_Base].[1_id_cites]
GROUP BY CLng([5_History_Mail]![5_id_1] & [5_History_Mail]![3_Theme_Delivery_5_mail] & [5_History_Mail]![id_4_mail_5_theme]), [1_Base].[1_id], [2_cities].[2_id], [2_cities].[2_city], [1_Base].[1_compani], [5_History_Mail].[5_id_1], [5_History_Mail].[3_Theme_Delivery_5_mail], [5_History_Mail].id_4_mail_5_theme
HAVING ((([2_cities].[2_id])=349) AND ((Max([5_History_Mail].[5_date])>Date()-Day(7))=0));)));



Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
21.10.2016, 16:03
    #39331731
WarAnt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
it-sphere,

а что он сейчас возвращает?
или так и говорит, не буду ничего возвращать у вас тут вложенный запрос?
пс
Вы про форматирование запросов слыхали? а то у меня аж слезы из глаз потекли.
...
Рейтинг: 0 / 0
21.10.2016, 16:11
    #39331741
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
WarAnt, Все найденные значения. Ищет правильно, только не хочет вернуть мин. значение.
Про форматирование не читал, работаю больше в конструкторе...
...
Рейтинг: 0 / 0
21.10.2016, 16:37
    #39331774
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
стесняюсь спросить: а как по Вашему должна произойти группировка по полю [1_Base].[1_id](я понял что оно ключевое и естессно уникальное)
...
Рейтинг: 0 / 0
21.10.2016, 16:51
    #39331786
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
sdku,
Да, вы правильно понимаете, что оно уникально.
Только в запросе выводится не одна запись (см. скриншот)
и проблем как бы нет. Скажу больше....
Если из запроса убрать поле (выражение 1) в котором, в условии отбора, стоит вложенный запрос
то проблемы с группировкой нет.
Если есть сомнения могу предоставить скриншот
...
Рейтинг: 0 / 0
21.10.2016, 20:44
    #39331925
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
it-sphere,
Код: vbnet
1.
2.
3.
SELECT TOP 1 
-- ... тут твой запрос без начального SELECT ... 
ORDER BY Min-id_4_Mail DESC
...
Рейтинг: 0 / 0
21.10.2016, 21:09
    #39331938
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
Akina,
Можно чуть подробнее...
Не так силен в SQL
...
Рейтинг: 0 / 0
22.10.2016, 05:54
    #39332051
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
Akina,
Спасибо, разобрался, все работает.
...
Рейтинг: 0 / 0
22.10.2016, 20:04
    #39332168
it-sphere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает поиск min значения в запросе имеющий вложенный запрос
Проблема оказалась несколько глубже....
При использовании в условии отбора not in совместно с поиском Min значения (в моем случае)
Происходит накладывание фильтра друг на друга
Если в запросе который возвращает ряд 1234.... поставить условие not in (1) совместно с поиском Min значения
Запрос вернет ноль значений
Код: sql
1.
2.
3.
SELECT Min(test.id_test) AS [Min-id_test]
FROM test
HAVING (((Min(test.id_test)) Not In (1)));


Для того чтобы вопрос вернул значение 2
Нужно в инструкции FROM, вместо таблицы, вставлять запрос который имеет условие not in (1)
а потом уже искать в возвращенных значениях Min
Решение проблемы в окончательном варианте выглядит так.
Код: sql
1.
2.
3.
4.
5.
SELECT Min(test.id_test) AS [Min-id_test]
FROM [SELECT test.id_test
FROM test
GROUP BY test.id_test
HAVING (((test.id_test) Not In (1)))]. AS Min;


Извиняюсь за форматирование запросов...
Я в программировании любитель.
Всем спасибо.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает поиск min значения в запросе имеющий вложенный запрос / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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