Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
55
Добавлен:
16.04.2013
Размер:
246.78 Кб
Скачать

Лабораторная работа №2 по курсу субд oracle Введение

Данная лабораторная работа ориентированна на изучение команд языка PL/SQL:

  1. SELECT

  • форматирование результатов работы SELECT

  • выборка данных (строк) из таблицы соответствующих некому критерию

  • упорядочивание получаемых данных (строк)

  • исключение повторяющихся значений

  • использование функций агрегирования (групповых функций)

  • группировка значений

  • применение простых вложенных запросов (подзапросов)

  1. UPDATE

  • обновление данных (строк) в таблице

  • обновление данных (строк) в таблице соответствующих некому критерию

  1. DELETE

  • удаление данных (строк) из таблицы соответствующих некому критерию

Задание

  1. Создать таблицу product со следующей схемой:

Поле (столбец)

Тип данных

product_id

INT

name

VARCHAR2(25)

price

NUMBER(7,2)

vat_tax

NUMBER(2,2)

quantity

INT

  1. Заполнить таблицу следующими данными:

product_id

name

price

vat_tax

quantity

1

CD-RW Disk

20.0

0.18

100

2

CD-R Disk

15.0

0.18

200

3

3.5" Floppy Disk

10.0

0.18

30

4

DVD-R Disk

80.0

0.18

10

5

DVD+R Disk

80.0

0.18

10

6

DVD-RW Disk

300.0

0.18

5

7

DVD+RW Disk

300.0

0.18

5

8

Red Ink Marker

60.0

0.18

10

9

Green Ink Marker

60.0

0.18

10

10

Blue Ink Marker

60.0

0.18

10

11

Blue Ink Marker

80.0

0.18

NULL

12

Milk 1 lt.

20.0

0.10

NULL

13

Milk 3 lt.

60.0

0.10

NULL

14

Milk 3 lt.

65.0

0.10

5

  1. Составить и выполнить команды select

  • Вывести название и цену всех DVD дисков, задать псевдоним столбца ‘DVD disks’

  • Вывести название и цену всех CD дисков полная цена которых (с учетом НДС) более 15 единиц, упорядочив строки по убыванию полной цены

  • Вывести название и цену всех товаров с ценой в диапазоне

  • Вывести название и цену всех перезаписываемых (RW) дисков с ценой в диапазоне (20, 300]

  • Вывести названия товаров со словом ‘Marker’, исключив повторения

  • Рассчитать общую суммарную стоимость всех товаров со словом ‘Disk’ в названии

  • Рассчитать среднюю цену товара со словом ‘Marker’ в названии, используя товары чье количество не равно NULL

  • Рассчитать среднюю величину НДС для дисков DVD+ и Floppy

  • Вывести названия и цены DVD дисков, цена на которые выше средней цены всех DVD дисков

  • Вывести товары, чья цена равна цене на какой либо CD или DVD диск

  • Вывести среднюю, максимальную и минимальную цену товара для товаров (каждой группы) величина НДС у которых одинакова

  • Вывести количество товаров величина НДС у которых одинакова (для каждой величины НДС)

  • Вывести название, среднюю цену и количество товаров, чья общая суммарная стоимость выше, чем общая суммарная стоимость товаров со словом ‘Marker’ в названии

  1. Составить и выполнить команды UPDATE

  • Увеличить цену всех товаров на 3%

  • Для CD дисков заменить слово ‘CD’ в названии на ‘TDK CD’ и увеличить их цену на 10%

  • Снизить цену на 7% у всех товаров чья цена выше средней (используя простой подзапрос в предложении WHERE)

  • Для товаров с product_id равным 5,7,10 установить ставку HДС на уровне 14%

  • Для таблицы, содержащей исходные данные, выполнить: для товаров чья цена менее 60 увеличить цену на 50%, а для товаров чья цена более 80 уменьшить цену на 50%

  1. Составить и выполнить команды DELETE

  • Удалить все товары, чья цена меньше 12 или их количество равно 0 (или NULL)

  • Удалить все товары, чья цена равна минимальной цене

  • Удалить товары количество которых менее 10% от среднего количества товаров с такой же величиной НДС

  1. Удалить таблицу

Соседние файлы в папке lab2
  • #
    16.04.2013246.78 Кб55lab2.doc
  • #
    16.04.201365.37 Кб56lab2_sample.lst
  • #
    16.04.20139.29 Кб58lab2_sample.sql