Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Использование предложения WHERE. Внутреннее соединение таблиц



При сравнении значения одной таблицы с со значением столбца другой таблицы условие поиска имеет следующий вид:

<условия поиска > = <имя столбца 1> <оператор> <имя столбца 2>

Пример:

Чтобы выбрать все записи о расходе товара из таблицы RASHOD и для каждого товара указать его цену из таблицы TOVARY, можно использовать такой оператор:

SELECT RASHOD.*, TOVARY.ZENA

FROM RASHOD, TOVARY

WHERE RASHOD.TOVAR = TOVARY.TOVAR

Такой способ соединения называется внутренним соединением.

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

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

2. Из получившегося НД отбрасываются все записи, не удовлетворяющие условию в предложении WHERE.

Замечание:

Фактический порядок выполнения запроса для конкретного SQL-сервера может быть другим.

Пример:

Таблица A

Ст. P1 Ст. P2 Ст. P3
a x  
b x  
c y  
d    

Таблица B

Ст. P1 Ст. P2
x  
y  
z  

SELECT A.P1, A.P2, B.P2

FROM A, B

WHERE A.P2 = B.P1

Промежуточный набор

Ст. A.P1 Ст. A.P2 Ст. B.P1 Ст. B.P2
a x x  
a x y  
a x z  
b x x  
b x y  
b x z  
c y x  
c y y  
c y z  

Окончательный набор

Ст. A.P1 Ст. A.P2 Ст. B.P2
a x  
b x  
c у  




Дата публикования: 2014-12-28; Прочитано: 198 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...