|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.05.2011, 13:02 | #1 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
создание запросов на отсутствие строки
Всем Добрый день! У меня вот такая проблемка. Я создала бд из 15 таблиц. каждая таблица-- это определенный документ, у которой есть соответствующий номер. № Документов должны храниться в папках(запросах). Папка ожидания1 состоит из № документов: письмо поставщику, ответ поставщика, рекл акт, накл на отправку и претензия, при этом претензия не отображается и значения его отсутствуют.
Я попробовала сделать так: создала запрос на таблицы, под претензией в условии отбора написала Is Null(еще пробовала ""). - строки не отображаются вообще. Таблицы все связаны... не могу понять в чем дело( вот схема данных: |
04.05.2011, 13:11 | #2 |
Форумчанин
Регистрация: 27.09.2010
Сообщений: 376
|
Здравствуйте
Не очень понятно что Вам нужно (Вы больше объясняли что Вы делали). Дайте код Вашего запроса. До свидания Последний раз редактировалось OlegVE; 04.05.2011 в 13:15. |
04.05.2011, 13:19 | #3 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
SELECT [Письмо поставщику].[№ письма], [Ответ поставщика].[№ письма], [Рекламационный акт].№, [Накладная на отправку].№
FROM (([Письмо поставщику] INNER JOIN [Ответ поставщика] ON [Письмо поставщику].[№ письма] = [Ответ поставщика].[Исходящее письмо]) INNER JOIN [Рекламационный акт] ON [Письмо поставщику].[№ письма] = [Рекламационный акт].[№ письма поставщику]) INNER JOIN ([Накладная на отправку] INNER JOIN Претензия ON [Накладная на отправку].№ = Претензия.№) ON ([Рекламационный акт].№ = Претензия.[Р/а]) AND ([Рекламационный акт].№ = [Накладная на отправку].[Р/а]) WHERE (((Претензия.№) Is Null)); |
04.05.2011, 13:31 | #4 |
Участник клуба
Регистрация: 12.08.2010
Сообщений: 1,077
|
неверна схема
-ответа на письмо может и не быть, а у вас jnner join -поэтому должно быть left join основной реклам\акта с письмами\справочниками -хотя иметь 15 справочников на письма --вряд ли правильно
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание |
04.05.2011, 13:33 | #5 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
Это не справочники, а документы.
И без ответа поставщика нельзя создать рекл акт. |
04.05.2011, 13:46 | #6 |
Участник клуба
Регистрация: 12.08.2010
Сообщений: 1,077
|
у вас 5 джойн с обязательным наличием, а проверяете на нулл
это невозможно схема -ответ п -письмо п -рекл акт -накладная на отгр -претензия ...........должны существовать до запроса
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание |
04.05.2011, 13:49 | #7 |
Форумчанин
Регистрация: 27.09.2010
Сообщений: 376
|
Извините, ухожу на обед, часика через полтора вернусь, а пока попробуйте добавить красное (чтобы увидеть когда появляется Null), замените все INNER на LEFT (только тогда у Вас появятся Претензия.[№] Is Null), все поля заключите в квадратные скобки и объясните зелёное
Код:
Смотрю Вам уже начали отвечать. Считайте мой ответ неким итогом Последний раз редактировалось OlegVE; 04.05.2011 в 13:52. |
04.05.2011, 13:53 | #8 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
Это потому что каждый номер документа ключ своей таблицы.
что теперь делать? |
04.05.2011, 14:01 | #9 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
SELECT [Письмо поставщику].[№ письма], [Ответ поставщика].[№ письма], [Рекламационный акт].[№], [Накладная на отправку].[№], [Претензия].[№]
FROM (([Письмо поставщику] LEFT JOIN [Ответ поставщика] ON [Письмо поставщику].[№ письма] = [Ответ поставщика].[Исходящее письмо]) LEFT JOIN [Рекламационный акт] ON [Письмо поставщику].[№ письма] = [Рекламационный акт].[№ письма поставщику])LEFT JOIN ([Накладная на отправку] LEFT JOIN Претензия ON [Накладная на отправку].№ = Претензия.№) ON ([Рекламационный акт].№ = Претензия.[Р/а]) AND ([Рекламационный акт].№ = [Накладная на отправку].[Р/а]) WHERE (((Претензия.№) Is Null)); - не поддерживается выражение объединения |
04.05.2011, 14:02 | #10 |
Пользователь
Регистрация: 13.03.2011
Сообщений: 19
|
зеленое- это связи наверно... я в конструкторе делала(
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Отсутствие отрисовки на DC | Alex Cones | Win Api | 3 | 04.02.2011 11:59 |
Создание пустой строки и копирование в неё содержимое предыдущей строки | Gvaridos | Microsoft Office Excel | 2 | 29.10.2010 13:33 |
Доработка базы данных, а именно создание запросов | Lion4ik89 | Microsoft Office Access | 2 | 15.02.2010 17:11 |
Отсутствие IP | GAGARIN-NEW | Работа с сетью в Delphi | 1 | 17.01.2008 17:56 |
Проверка на отсутствие данных в БД | Elena | БД в Delphi | 5 | 14.06.2007 16:10 |