Синтаксис оператора UNION




SELECT...

UNION [ALL]

SELECT...

[UNION

SELECT...]

Оператор UNION реализован в MySQL 4.0.0.

UNION используется для объединения результатов работы нескольких команд SELECT в один набор результатов.

Эти команды SELECT являются обычными командами выборки данных, но со следующим ограничением:

  • Только последняя команда SELECT может включать оператор INTO OUTFILE.

Если не используется ключевое слово ALL для UNION, все возвращенные строки будут уникальными, так как по умолчанию подразумевается DISTINCT для всего результирующего набора данных. Если указать ключевое слово ALL, то результат будет содержать все найденные строки из всех примененных команд SELECT.

Если для всего результата UNION необходимо применить оператор ORDER BY, следует использовать круглые скобки:

(SELECT a FROM table_name WHERE a=10 AND B=1 ORDER BY a LIMIT 10)

UNION

(SELECT a FROM table_name WHERE a=11 AND B=2 ORDER BY a LIMIT 10)

ORDER BY a;

Загрузка данных в таблицу

Создав таблицу, нужно позаботиться об ее заполнении. Для этого предназначены команды LOAD DATA и INSERT.

Предположим, ваши записи соответствуют приведенным в этой таблице (обратите внимание: MySQL принимает даты в формате ГГГГ-ММ-ДД; возможно, к такой записи вы не привыкли).

name owner species sex birth death
Fluffy Harold cat f 1993-02-04  
Claws Gwen cat m 1994-03-17  
Buffy Harold dog f 1989-05-13  
Fang Benny dog m 1990-08-27  
Bowser Diane dog m 1998-08-31 1995-07-29
Chirpy Gwen bird f 1998-09-11  
Whistler Gwen bird   1997-12-09  
Slim Benny snake m 1996-04-29  

Так как вы начинаете работу с пустой таблицей, заполнить ее будет проще всего, если создать текстовый файл, содержащий по строке на каждое из животных, а затем загрузить его содержимое в таблицу одной командой.

Создайте текстовый файл с именем `pet.txt', содержащий по одной записи в каждой строке (значения столбцов должны быть разделены символами табуляции и даны в том порядке, который был определен командой CREATE TABLE). Незаполненным полям (например, неизвестный пол или даты смерти живых на сегодняшний день животных), можно присвоить значение NULL. В текстовом файле это значение представляется символами \N. Например, запись для птицы Whistler должна выглядеть примерно так (между значениями должны располагаться одиночные символы табуляции):

name owner species sex birth death
Whistler Gwen bird \N 1997-12-09 \N

Загрузить файл `pet.txt' в таблицу можно с помощью следующей команды:

mysql> LOAD DATA LOCAL INFILE "pet.txt" INTO TABLE pet;

Маркер конца строки и символ, разделяющий значения столбцов, можно специально задать в команде LOAD DATA, но по умолчанию используются символы табуляции и перевода строки. Воспринимая их, команда сможет корректно прочитать файл `pet.txt'.

При добавлении одиночных записей используется команда INSERT. В самом простом варианте ее применения необходимо задать значения каждого столбца, в том порядке, в каком они были перечислены в команде CREATE TABLE. Предположим, Диана (Diane) купила хомячка по имени Puffball. Соответствующую запись в таблицу с можно внести с помощью команды INSERT примерно так:

mysql> INSERT INTO pet -> VALUES ('Puffball','Diane','hamster','f','1999-03-30',NULL);

Обратите внимание на то, что здесь строковые выражения и даты представлены в виде ограниченных кавычками строк. Кроме того, в команде INSERT отсутствующие данные можно прямо заменять на NULL. Пользоваться эвфемизмом \N, как в команде LOAD DATA, нужды нет.

Этот пример наглядно показывает, что если бы с самого начала все данные вносились в базу при помощи нескольких команд INSERT, а не одной команды LOAD DATA, то набирать пришлось бы гораздо больше текста.

Задания.

  1. Разработать базу данных, содержащую оценки учащихся по предметам и вычислить средний балл учащихся. Осуществить выборку всех учащихся, средний балл которых попадает в заданный диапазон.
  2. Составить Базу Данных “Записная книжка”, в которой представлены адреса и телефоны родственников, друзей и знакомых. Составить запрос, который по фамилии человека определял бы его адрес и телефон.
  3. Составить Базу Данных “Домашняя библиотека”, в которой были бы представлены книги по разделам, например, фантастика, детективы и т.д. Составить запрос, который по фамилии автора определял какие книги есть в библиотеке.
  4. Составить Базу Данных “Телефонный справочник”, в которой представлены адреса и телефоны оптово-закупочных фирм, строительных фирм и т.д. Составить запрос, который по названию фирмы определял бы его адрес и телефон.
  5. Составить Базу Данных “Телефонный справочник”, в которой представлены адреса и телефоны магазинов, парикмахерских, библиотек и т.д. Составить запрос, который по номеру магазина (или парикмахерской) определял бы его адрес и телефон.
  6. По сведениям о планетах Солнечной системы составьте базу данных “Планеты Солнечной системы”. Запишите ее с именем PLNET.

 

Планета Расстояние Отн.объем Отн.масса Отн.размер
Меркурий Венера Земля Марс Юпитер Сатурн       Малая Малая Эталон Малая Большая Большая
  1. На продовольственном складе хранятся:
    • яблоки 1000 кг по цене 5000 рублей
    • лимоны 2000 кг по цене 9000 рублей
    • мандарины 1500 кг по цене 10000 рублей
    • курага 1200 кг по цене 20000 рублей
    • бананы 2000 кг по цене 6000 рублей.

Создайте базу данных. Занесите эти данные в базу данных. Выведите информацию о яблоках (количество, стоимость 1 кг.).

  1. В аптечном складе хранятся лекарства. Сведения о лекарствах содержатся в специальной ведомости: наименование лекарственного препарата; количество (в шт.); цена; срок хранения на складе (в месяцах). Выяснить, сколько стоит самый дорогой и самый дешевый препарат; сколько препаратов хранится на складе более 3 месяцев; сколько стоят все препараты, хранящиеся на складе.
  2. Торговый склад производит уценку хранящейся продукции. Если продукция хранится на складе дольше 10 месяцев, то она уценивается в 2 раза, а если срок хранения превысил 6 месяцев, но не достиг 10, то в 1,5 раза. Ведомость уценки товаров должна содержать информацию: наименование товара, количество товара(шт.), цена товара до уценки, срок хранения товара, цена товара после уценки, общая стоимость товаров после уценки. Выяснить максимальный минимальный сроки хранения товаров на складе; максимальную и минимальную цены товаров до уценки и после уценки.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-07-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: