Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
1281 / 912 / 446
Регистрация: 21.10.2012
Сообщений: 2,589
1

Составной запрос

04.10.2015, 23:07. Показов 1926. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Имеется 2 таблицы: заказы и возврат. По данным из этих таблиц мы можем связать номер заказа и количество людей, относящихся к нему (запросы 1 и 2). С помощью запроса 3 я хочу вывести только те номера заказов, для которых число людей вернувших данный заказ оказывается меньше, чем число людей его заказавших. Можете подсказать, что нужно изменить?
Вложения
Тип файла: rar Туроператор23.rar (340.1 Кб, 2 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.10.2015, 23:07
Ответы с готовыми решениями:

Составной справочник продукции
Всем Привет! Уважаемые форумчане помогите создать справочник продукции. Идея такая, чтобы не...

Составной ключ и изменение связи
У меня вот так вот получается: А как сделать так???

Как избавится от составной связи сущностей?
Каким образом можно реализовать одинарную связь между сущностями, представленными рисунке (схема...

Как сделать составной ключ&
Имеется таблица (см. скрин). Поле "ИмяЗаписи" допускает одинаковые значения. Поле "ДатаВремя"...

6
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
04.10.2015, 23:39 2
Лучший ответ Сообщение было отмечено АлександрКом как решение

Решение

Цитата Сообщение от АлександрКом Посмотреть сообщение
вывести только те номера заказов, для которых число людей вернувших данный заказ оказывается меньше, чем число людей его заказавших.
Так наверное (пользуясь запросами 1 и 2)
SQL
1
2
3
SELECT [2].[№ заказа], [2].[Count-Фамилия], val(nz([1]![Count-Фамилия пассажира],0)) AS [Count-vozvrat]
FROM 2 LEFT JOIN 1 ON [1].[№ заказа] = [2].[№ заказа]
WHERE val(nz([2].[Count-Фамилия],0))>val(nz([1]![Count-Фамилия пассажира],0))
Функция Val введена для превращения строк в число.
1
1281 / 912 / 446
Регистрация: 21.10.2012
Сообщений: 2,589
05.10.2015, 21:47  [ТС] 3
Спасибо Попытался сделать по аналогии, чтобы выводились только те фамилии, которых нет в таблице Возврат, но в чем-то ошибка:
SQL
1
2
3
SELECT [Заказано+фамилии].Фамилия
FROM [Заказано+фамилии] LEFT JOIN Возврат ON [Заказано+фамилии].[Номер заказа] = Возврат.[№ заказа]
WHERE ((([Заказано+фамилии].Фамилия)<>[Возврат]![Фамилия пассажира]));
0
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
05.10.2015, 22:11 4
Цитата Сообщение от АлександрКом Посмотреть сообщение
чтобы выводились только те фамилии, которых нет в таблице Возврат
SQL
1
2
3
SELECT [Заказано+фамилии].Фамилия
FROM [Заказано+фамилии] LEFT JOIN Возврат ON [Заказано+фамилии].[Номер заказа] = Возврат.[№ заказа]
WHERE Возврат.[№ заказа] IS NULL
0
1281 / 912 / 446
Регистрация: 21.10.2012
Сообщений: 2,589
05.10.2015, 22:23  [ТС] 5
Цитата Сообщение от mobile Посмотреть сообщение
SELECT [Заказано+фамилии].Фамилия
FROM [Заказано+фамилии] LEFT JOIN Возврат ON [Заказано+фамилии].[Номер заказа] = Возврат.[№ заказа]
WHERE Возврат.[№ заказа] IS NULL
Но тогда если в таблице Заказано+фамилии на один и тот же заказ повешено 2 разных человека, но только один из них есть в таблице Возврат, то второй не отобразится в результате запроса
0
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
05.10.2015, 22:32 6
Цитата Сообщение от АлександрКом Посмотреть сообщение
если в таблице Заказано+фамилии на один и тот же заказ повешено 2 разных человека, но только один из них есть в таблице Возврат, то второй не отобразится в результате запроса
SQL
1
2
3
4
SELECT [Заказано+фамилии].Фамилия
FROM [Заказано+фамилии] LEFT JOIN Возврат ON ([Заказано+фамилии].Фамилия = Возврат.[Фамилия пассажира]) 
    AND ([Заказано+фамилии].[Номер заказа] = Возврат.[№ заказа])
WHERE Возврат.[№ заказа] IS NULL AND Возврат.[Фамилия пассажира] IS NULL
1
1281 / 912 / 446
Регистрация: 21.10.2012
Сообщений: 2,589
05.10.2015, 22:40  [ТС] 7
Спасибо за помощь, так все отображает верно
0
05.10.2015, 22:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.10.2015, 22:40
Помогаю со студенческими работами здесь

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

Как в запросе сделать название поля составной конструкцией
Есле такое возможно. Подскажите как в запросе в вычисляемом поле указать по занчению поля одной...

Составной первичный или уникальный ключ, что выбрать?
Всем доброго времени суток. Имеется простая БД, вот её схема: Теперь я хочу сделать так,...

Запись данных в таблицы только нажатием кнопки «Сохранить» на составной форме
Здравствуйте. Как можно осуществить запись данных в таблицы (главную и подчиненную) через связанную...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru