Мониторинг обменных курсов валют
18c0693f

 Самосоединения


В некоторых задачах необходимо получить информацию, выбранную особым образом только из одной таблицы. Для этого используются так называемые самосоединения, или рефлексивные соединения. Это не отдельный вид соединения, а просто соединение таблицы с собой с помощью алиасов. Самосоединения полезны в случаях, когда нужно получить пары аналогичных элементов из одной и той же таблицы.

SELECT one.last_name, two.last_name, 

       one.hire_date

FROM employee one, employee two

WHERE one.hire_date = two.hire_date

  AND one.emp_no < two.emp_no
                      получить пары фамилий сотрудников,
                                                             которые приняты на работу в один
                                                             и тот же день

LAST_NAME            LAST_NAME              HIRE_DATE

==================== ==================== ===========

Nelson               Young                28-DEC-1988

Reeves               Stansbury            25-APR-1991

Bishop               MacDonald             1-JUN-1992

Brown                Ichida                4-FEB-1993

SELECT d1.department, d2.department, d1.budget

FROM department d1, department d2

WHERE d1.budget = d2.budget

  AND d1.dept_no < d2.dept_no
                                                             получить список пар отделов с
                                                             одинаковыми годовыми бюджетами

DEPARTMENT                DEPARTMENT                   BUDGET

========================  ========================= =========

Software Development      Finance                   400000.00

Field Office: East Coast  Field Office: Canada      500000.00

Field Office: Japan       Field Office: East Coast  500000.00

Field Office: Japan       Field Office: Canada      500000.00

Field Office: Japan       Field Office: Switzerland 500000.00

Field Office: Singapore   Quality Assurance         300000.00

Field Office: Switzerland Field Office: East Coast  500000.00






Самый выгодный курс обмена валюты