Студопедия

Главная страница Случайная лекция


Мы поможем в написании ваших работ!

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика



Мы поможем в написании ваших работ!




Примеры запросов. 1.Найти пары всех продавцов, имеющих одинаковый рейтинг SELECT alias1.cname, alias2.cname, alias1.rating FROM Customers alias1

1.Найти пары всех продавцов, имеющих одинаковый рейтинг
SELECT alias1.cname, alias2.cname, alias1.rating
FROM Customers alias1, Customers alias2 WHERE alias1.rating=alias2.rating;

2.Исключение избыточности при выводе результатов запросов с самообъединением
SELECT T1.cname, T2.cname, T1.rating FROM Customers T1, Customers T2
WHERE T1.rating=T2.rating AND T1.cname<T2.cname;

3.Выявление возможных ошибок в данных. Например вывод списка заказов, оформленных различными продавцами для данного покупателя (по условиям работы за каждым покупателем должен быть закреплен один и только один продавец!!!)
SELECT T1.onum, T1.cnum, T1.snum, T2.onum, T2.cnum, T2.snum
FROM Orders T1, Orders T2 WHERE T1.cnum=T2.cnum AND T1.snum<>T2.snum;

4.В запросе можно использовать любое количество алиасов для одной и той же таблицы
SELECT a.cnum, b.cnum, c.cnum
FROM Customers a, Customers b, Customers c
WHERE a.rating=100 AND b.rating=200 AND c.rating=300;

5.Алиасы можно создавать и для их использования только в условных выражениях запросов
SELECT b.cnum, b.cname,
FROM Customers a, Customers b
WHERE a.snum=1002 AND b.city==a.city;

6. Можно конструировать соединения, которые содержат различные таблицы и алиасы одной и той же таблицы
SELECT S.sname, S.snum, C1.cname, C2.cname
FROM Customers C1, Customers C2, Salespeople S
WHERE C1.snum=C2.snum AND S.snum=C1.snum AND C1.cnum<C2.cnum
;

Вопросы

1. Напишите запрос, который позволяет получить все пары продавцов, проживающих в одном городе. Из результата необходимо исключить повторяющиеся строки.

2. Напишите запрос, который генерирует все пары номеров заказов для данного покупателя, имена покупателей и исключает повторяющиеся значения.

 

1. SELECT first.sname, second.sname FROM Salespeople first, Salespeople second WHERE first.city = second.city AND first.sname < second.sname; 2. SELECT cname, first.onum, second.onum FROM Orders first, Orders second, Customers WHERE first.cnum = second.cnum AND first.cnum = Customers.cnum AND first.onum < second.onum; 3. SELECT a.cname, a.city FROM Customers a, Customers b WHERE a.rating = b.rating AND b.cnum = 2001;

 


<== предыдущая страница | следующая страница ==>
Примеры запросов. 1. Вывод всевозможных комбинаций фамилий продавцов и покупателей, проживающих в одном городе SELECT Customers.cname | Примеры запросов. 1. Вывод списка заказов, оформленных продавцом по фамилии Motika SELECT * FROM Orders WHERE snum = (SELECT snum FROM Salespeople WHERE sname='Motika')

Дата добавления: 2015-06-30; просмотров: 204; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.003 сек.