-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Не работает вложенный запрос

Четверг, 03 Ноября 2016 г. 10:00 + в цитатник
Добрый день!
Кто знает...
Существует ли в Access ограничение по длине вложенных запросов?
Вопрос возник при попытке добавления в условие отбора вложенного запроса.
Access ругнулся так "Слишком длинный текст для изменения"
Попытка вставки через SQL привела так же к ошибке. (см. файл)
По отдельности оба запроса работают.
Вот первый запрос в котором потом, вместо значения 506117, подставим условие.
SELECT CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]) AS base_mail, [1_Base].[1_id], [1_Base].[1_compani], [1_Base].[1_id_cites], [4_Mail].Theme_4_Mail, [4_Mail].Path_Mail_4_Mail
FROM (2_cities INNER JOIN (1_Base INNER JOIN 3_Theme_Delivery ON [1_Base].[1_type] = [3_Theme_Delivery].category_recipient_3_Theme_Delivery) ON [2_cities].[2_id] = [1_Base].[1_id_cites]) LEFT JOIN 4_Mail ON [3_Theme_Delivery].id_3_Theme_Delivery = [4_Mail].id_3_Theme_Delivery
WHERE (((CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])) In (506117)));   


Это второй запрос который возвращает условие для первого запроса
SELECT Min(id_base_mail.id_base_mail) AS [Min-id_base_mail]
FROM [SELECT [1_Base].[1_id_cites], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]) AS id_base_mail, [1_Base].[1_id]
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_cites], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]), [1_Base].[1_id]
HAVING ((([1_Base].[1_id_cites])=[Forms]![Рассылка]![City]) AND ((CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])) Not In (SELECT CLng([5_History_Mail]![5_id_1] & [5_History_Mail]![5_id_4_mail]) AS id_number 
FROM 2_cities INNER JOIN (1_Base INNER 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]![5_id_4_mail]), [2_cities].[2_id] HAVING ((([2_cities].[2_id])=[Forms]![Рассылка]![City]) AND ((Max([5_History_Mail].[5_date])>Date()-Day(7))=0)))))].AS id_base_mail GROUP BY id_base_mail.[1_id]);


А все вместе выглядит так
SELECT CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]) AS base_mail, [1_Base].[1_id], [1_Base].[1_compani], [1_Base].[1_id_cites], [4_Mail].Theme_4_Mail, [4_Mail].Path_Mail_4_Mail
FROM (2_cities INNER JOIN (1_Base INNER JOIN 3_Theme_Delivery ON [1_Base].[1_type] = [3_Theme_Delivery].category_recipient_3_Theme_Delivery) ON [2_cities].[2_id] = [1_Base].[1_id_cites]) LEFT JOIN 4_Mail ON [3_Theme_Delivery].id_3_Theme_Delivery = [4_Mail].id_3_Theme_Delivery
WHERE (((CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])) In (SELECT Min(id_base_mail.id_base_mail) AS [Min-id_base_mail]
FROM [SELECT [1_Base].[1_id_cites], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]) AS id_base_mail, [1_Base].[1_id]
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_cites], CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail]), [1_Base].[1_id]
HAVING ((([1_Base].[1_id_cites])=[Forms]![Рассылка]![City]) AND ((CLng([1_Base]![1_id] & [4_Mail]![id_4_Mail])) Not In (SELECT CLng([5_History_Mail]![5_id_1] & [5_History_Mail]![5_id_4_mail]) AS id_number 
FROM 2_cities INNER JOIN (1_Base INNER 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]![5_id_4_mail]), [2_cities].[2_id] HAVING ((([2_cities].[2_id])=[Forms]![Рассылка]![City]) AND ((Max([5_History_Mail].[5_date])>Date()-Day(7))=0)))))].AS id_base_mail GROUP BY id_base_mail.[1_id]))));

Танец с бубнами не помог....
Помогите, кто знает

http://www.sql.ru/forum/1237110/ne-rabotaet-vlozhennyy-zapros


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку