Изучаем sql



Pdf көрінісі
бет177/261
Дата28.07.2022
өлшемі1,6 Mb.
#147825
1   ...   173   174   175   176   177   178   179   180   ...   261
Байланысты:
Изучаем SQL ( PDFDrive )

SELECT cust_id
> FROM customer;
++
| cust_id |
++
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
| 11 |
| 12 |
| 13 |
++
13 rows in set (0.02 sec)
В таблице 
customer
13 строк с ID от 1 до 13. Таким образом, каждый ID
клиента включен в таблицу 
account
, по крайней мере, один раз. Следо
вательно, при соединении двух таблиц по столбцу 
cust_id
можно ожи
дать, что в результирующий набор будут включены все 24 строки (если
нет других условий фильтрации):
mysql> 
SELECT a.account_id, c.cust_id
> FROM account a INNER JOIN customer c
> ON a.cust_id = c.cust_id;


Внешние соединения
197
+++
| account_id | cust_id |
+++
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 2 |
| 6 | 3 |
| 7 | 3 |
| 8 | 4 |
| 9 | 4 |
| 10 | 4 |
| 11 | 5 |
| 12 | 6 |
| 13 | 6 |
| 14 | 7 |
| 15 | 8 |
| 16 | 8 |
| 17 | 9 |
| 18 | 9 |
| 19 | 9 |
| 20 | 10 |
| 21 | 10 |
| 22 | 11 |
| 23 | 12 |
| 24 | 13 |
+++
24 rows in set (0.00 sec)
Как и ожидалось, в результирующем наборе представлены все 24 сче
та. Но что произойдет, если соединить таблицу 
account
с одной из спе
циализированных таблиц клиентов, например таблицей 
business
?
mysql> 
SELECT a.account_id, b.cust_id, b.name
> FROM account a INNER JOIN business b
> ON a.cust_id = b.cust_id;
++++
| account_id | cust_id | name |
++++
| 20 | 10 | Chilton Engineering |
| 21 | 10 | Chilton Engineering |
| 22 | 11 | Northeast Cooling Inc. |
| 23 | 12 | Superior Auto Body |
| 24 | 13 | AAA Insurance Inc. |
++++
5 rows in set (0.00 sec)
Теперь в результирующем наборе только пять строк вместо 24. Загля
нем в таблицу 
business
, чтобы понять, почему так произошло:
mysql> 


Достарыңызбен бөлісу:
1   ...   173   174   175   176   177   178   179   180   ...   261




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет