Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Если между таблицами, на основе которых строится запрос или представление, в базе данных отсутствует связь, то при добавлении таблиц к источнику данных на экране отобразится окно настройки связей Join Condition (рис. 118).

Рис. 118 – Окно настройки связей JoinCondition
В верхней части диалогового окна Join Condition размещены два раскрывающихся списка, содержащие поля, которые можно использовать для объединения таблиц13. Ниже расположен переключатель Type of join (Тип объединения), содержащий опции, определяющие тип создаваемой между таблицами связи. Назначение опций описано в табл. 16.
Таблица 16. Назначение опций диалогового окна Join Condition
Опция | Тип создаваемой связи14 |
Inner join (Внутреннее объединение)15 | Создает объединение, в котором выбираются только те записи, которые содержат совпадающие значения в полях связи |
Left join (Объединение слева) | Создает объединение, в котором выбираются все записи из левой таблицы, а также записи из правой таблицы, значения поля связи которого совпадают со значениями поля связи левой таблицы |
Right join (Объединение справа) | Создает объединение, в котором выбираются все записи из правой таблицы, а также записи из левой таблицы, значения поля связи которого совпадают со значениями поля связи правой таблицы |
Full join (Полное объединение) | Создает объединение, в котором выбираются все записи из правой и левой таблиц |
ЗАДАНИЕ 27. Создание запросов на основе одной таблицы
Точное совпадение значений полей
В результате выполнения задания будут созданы запросы:
Disk_vyd – список дисков, находящихся в прокате
Disk_god – список дисков, выпущенных в 2013 или 2014 году
В папке с проектом DVD создайте папку Query, которую будут сохраняться созданные запросы. Запустите проект dvd. pjx. Разработайте запрос, который выводит информацию о дисках, выданных в прокат. Для этого в проекте на вкладке Data выделите объект Queries и нажмите кнопку New. В появляющемся окне выберите вариант New Query, в результате чего будет запущен конструктор запросовQuery Disigner. Первоначально поверх окна конструктора располагается окно выбора источника данных для запроса. Выберите в нем таблицу Disk. Работа с конструктором запросов выполняется в несколько этапов с помощью вкладок нижней части окна: вкладка Fields (рис. 119) – выбор полей таблиц базы данных, которые будут отображаться при запуске запроса; добавьте поля, представленные на рис. 119, используя двойной щелчок левой кнопки мыши или кнопку Add;
Рис. 119 – Вкладка Fields конструктора запросов
вкладка Join – используется для коррекции связи между таблицами, на основе которых создается запрос; поскольку в данном задании запрос будет создан на основе одной таблицы, то эта вкладка остается неиспользованной и пустой; вкладка Filter (рис. 120) – используется для выборки данных с помощью запроса; здесь следует выбрать поля и наложить на них условия отбора; установите условия отбора, как представлено на рис. 120: данные параметры обозначают «поле v_prok содержит значение истина»; чтобы изменить условие на «поле v_prok содержит значение истина», нажмите на кнопку в столбце Not16(обратите внимание на изменение вида кнопки);
Рис. 120 – Вкладка Filter конструктора запросов
вкладка Order By (рис. 121) – используется для настройки сортировки отображаемой информации; установите параметры сортировки, как на рис. 121, для сортировки дисков по названию;
Рис. 121 – Вкладка Order By конструктора запросов
вкладка Group By – используется для группировки данных, выводящихся в результате запроса; поскольку в данном задании запрос не требует группировки, то эта вкладка останется пустой; вкладка Miscellaneouse– позволяет задать дополнительные условия, такие как признак выборки повторяющихся значений, количество или процент выбора данных; поскольку в данном задании дополнительные параметры не используются, то эта вкладка останется пустой. Теперь запрос создан. Выполните его: вызовите контекстное меню свободной области конструктора и выберите в нем команду Run Query. Убедитесь, что на экране результат отображается в виде, представленном на рис. 12217.
Рис. 122 – Результат запроса Disk_vyd
Обратите внимание – это и есть стандартный результат запроса в режиме Browse. Здесь представлена информация о дисках, которые были выданыв прокат (v_prok=F).
Закройте таблицу-результат. При необходимости отобразите панель инструментов Query Designer (View → Toolbars →Query Designer), и нажмите на ней кнопку
Рис. 123–Окно Query Destination для варианта Table
Снова выполните команду Run Query контекстного меню. Обратите внимание, что никакого результата на экране нет. Это произошло из-за последней настройки – результат запроса сохранился в таблицу. Откройте папку Query и убедитесь, что в ней появилась таблица с именем disk_vyd. dbf18. Снова нажмите кнопку
Рис. 124 – Условия отбора для запроса Disk_god
содержимое вкладки Order By представлено на рис. 125:
Рис. 125 – Условия сортировки для запроса Disk_god
Запустите созданный запрос и убедитесь в правильности его создания. Обратите внимание на заголовки столбцов – они совпадают с именами соответствующих полей таблицы базы данных. Заголовки столбцов можно поменять, используя SQL-код запроса. Откройте запрос Disk_god в конструкторе (кнопка Modify). Вызовите на свободной части запроса контекстное меню и выберите команду View SQL (или нажмите кнопку
Рис. 126 – Окно SQL-кода запроса Disk_god
Чтобы изменить подписи столбцов, отредактируйте код следующим образом (рис. 127)20:
Рис. 127 – Отредактированный SQL-код запроса Disk_god
Завершите работу с проектом.Значения полей лежат в пределах указанного диапазона
В результате выполнения задания будет создан запрос Disk_zalog – список дисков, залог за прокат которых находится в пределах от 280 до 350 рублей.
Запустите проект dvd. pjx. Создайте запрос Disk_zalog, отображающий информацию о дисках, залог по которым располагается в пределах от 280 до 350 рублей, данные должны быть отсортированы в порядке убывания залога: поля для отображения: код диска, название, залог; условия отбора представлены на рис. 128:
Рис. 128 – Условия отбора для запроса Disk_zalog
содержимое вкладки Order By представлено на рис. 129:
Рис. 129 – Условия сортировки для запроса Disk_zalog
Запустите созданный запрос и убедитесь в правильности его создания. Завершите работу с проектом.Выбор полей, не удовлетворяющих заданному условию
В результате выполнения задания будет создан запрос Disk_nal – список дисков в наличии.
Запустите проект dvd. pjx. Создайте запрос Disk_nal, отображающий сведения о дисках в наличии: поля для отображения: код диска, название, в прокате, год выпуска; условие отбора представлено на рис. 130 (обратите внимание на кнопку столбца Not– это и есть способ отобразить значения, не удовлетворяющие условию v_prok=.T., т. е. заданное условие позволяет отобразить информацию о дисках, не находящихся в прокате):
Рис. 130 – Условие отбора для запроса Disk_nal
Сохраните созданный запрос под именем Disk_nal и проверьте правильность его выполнения. Завершите работу с проектом.ЗАДАНИЕ 28. Создание локального представления на основе нескольких таблиц
В результате выполнения задания будет создано представление, содержащее информацию и дисках, соответствующих жанрах и категориях дисков. Такой набор информации не хранится ни в одной таблице баз данных полностью, поэтому локальное представление будет создано на основе трех таблиц: Disk, Ganr, Kategor. В дальнейшем это представление будет использовано для создания прайс-листа дисков DVD-проката.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |


