ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

БистСма управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… SQLite. Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ язык запросов SQL ΠΈ рСляционныС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ SQLite3. ΠšΡƒΡ€Ρ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Π§Π°ΡΡ‚ΡŒ 3.2: Π’ΠΈΠ΄Ρ‹ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Бвязи Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹

ЗдравствуйтС, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ посСтитСли сайта ZametkiNaPolyah.ru. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ нашС знакомство с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ SQLite3. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ рСляционных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π² этой части ΠΌΡ‹ познакомимся с Π²ΠΈΠ΄Π°ΠΌΠΈ ΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ ΠΆΠ΅ ΠΌΡ‹ познакомимся с Ρ‚Π°ΠΊΠΈΠΌΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°, ΠΊΠ°ΠΊ: ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ. Данная Ρ‚Π΅ΠΌΠ° являСтся Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΈ Π΅Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ для ΠΈΡ… проСктирования.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’ΠΈΠ΄Ρ‹ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Бвязи Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹.

Π‘Ρ€Π°Π·Ρƒ скаТу, Ρ‡Ρ‚ΠΎ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² рСляционной Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… всСго Ρ‚Ρ€ΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΈΡ… ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ восприятиС ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ быстро, Π»Π΅Π³ΠΊΠΎ ΠΈ Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½ΠΎ. ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ.

Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Π’ своСй ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ я Π±ΡƒΠ΄Ρƒ ΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ с матСматичСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, Π° Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. Π“Ρ€ΡƒΠ±ΠΎ говоря, Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ…. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, практичСскиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π»Π΅Π³Ρ‡Π΅ ΡƒΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π». Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, с матСматичСской Ρ‚Π΅ΠΎΡ€ΠΈΠ΅ΠΉ ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° понимаСшь ΡΡƒΡ‚ΡŒ происходящСго.
Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅: ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Π² рСляционной Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π°Π±Π»ΠΈΡ†Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… World

Π£ нас Π΅ΡΡ‚ΡŒ простая Ρ‚Π°Π±Π»ΠΈΡ†Π° City ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… World, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ строки ΠΈ столбцы. Но Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹: Ρ‚Π°Π±Π»ΠΈΡ†Π°, строка, столбСц – это Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ стандарта SQL.
ΠšΡΡ‚Π°Ρ‚ΠΈ: Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΌΠΈΡ€Π΅ Π‘Π£Π‘Π” Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ стандарта SQL, Π½ΠΎ ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ стандарт SQL ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ рСляционных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ….
Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ рСляционных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…: Ρ‚Π°Π±Π»ΠΈΡ†Π° – это ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (принимаСтся Ρ‚Π°ΠΊΠΎΠ΅ Π΄ΠΎΠΏΡƒΡ‰Π΅Π½ΠΈΠ΅), строка – это ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π° столбСц – Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚. Иногда Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ строки записями. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ Π² дальнСйшСм ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ SQL.
Если Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ½ΠΈΠ³Π°), Ρ‚ΠΎ столбСц – это характСристики ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π° строки содСрТат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

Π’ΠΈΠ΄Ρ‹ ΠΈ Ρ‚ΠΈΠΏΡ‹ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ связаны Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Ρ€Π°Π·Ρƒ скаТу, Ρ‡Ρ‚ΠΎ всСго сущСствуСт Ρ‚Ρ€ΠΈ Π²ΠΈΠ΄Π° связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…:
β€’ связь ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ;
β€’ связь ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ;
β€’ связь ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ.
Рассмотрим, ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΈΠ΅ связи ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

РСализация связи ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…

Бвязь ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… рСализуСтся Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ А ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΆΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π‘, Π½ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ А. НС совсСм понятно, поэтому смотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

РСализация связи ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Π£ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ содСрТатся Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… ΠΈ Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся ΠΈΡ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρ‹. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ смСло ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ², Π½ΠΎ Π² Ρ‚ΠΎΠΆΠ΅ врСмя ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρƒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π­Ρ‚ΠΎ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ связи ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ.

Бвязь многиС ко многим

Бвязь ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ рСализуСтся Π² Ρ‚ΠΎΠΌ случаС, ΠΊΠΎΠ³Π΄Π° нСскольким ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ А ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π‘, ΠΈ Π² Ρ‚ΠΎΠΆΠ΅ врСмя нСскольким ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π‘ соотвСтствуСт нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ А. Рассмотрим простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ связи ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ

Π£ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° с ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ ΠΈ Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° с Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ. ΠŸΡ€ΠΈΠ²Π΅Π΄Ρƒ Π΄Π²Π° Π²Π΅Ρ€Π½Ρ‹Ρ… утвСрТдСния. ΠŸΠ΅Ρ€Π²ΠΎΠ΅: ΠΎΠ΄Π½Ρƒ ΠΊΠ½ΠΈΠ³Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСсколько Π°Π²Ρ‚ΠΎΡ€ΠΎΠ². Π’Ρ‚ΠΎΡ€ΠΎΠ΅: Π°Π²Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСсколько ΠΊΠ½ΠΈΠ³. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ наблюдаСм Ρ‚ΠΈΠΏΠΈΡ‡Π½ΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° связь ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ. Вакая связь (связь ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ) рСализуСтся ΠΏΡƒΡ‚Π΅ΠΌ добавлСния Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Бвязь ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ

Бвязь ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ – самая Ρ€Π΅Π΄ΠΊΠΎ встрСчаСмая связь ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ. Π’ 97 случаях ΠΈΠ· 100, Ссли Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΡƒΡŽ связь, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² ΠΎΠ΄Π½Ρƒ.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ связи ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ

Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ связаны ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ А соотвСтствуСт ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π‘, ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π‘ соотвСтствуСт ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ А. Как я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»: Ссли Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ связь ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ – смСло ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² ΠΎΠ΄Π½Ρƒ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ… случаСв, ΠΊΠΎΠ³Π΄Π° происходит модСрнизация Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….
НапримСр, Ρƒ нас Π±Ρ‹Π»Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ сотрудниках ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Но ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ измСнСния Π² бизнСс-процСссС ΠΈ появилась Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅ самыми сотрудниками, Π½ΠΎ Π½Π΅ для всСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π° Ρ€Π°Π·Π±ΠΈΠ² ΠΈΡ… ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»Π°ΠΌ. Π’Π°Π±Π»ΠΈΡ†Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ±ΠΎ всСх сотрудниках ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΈ связаны Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ связью ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ.

ΠœΡ‹ рассмотрСли всС Π²ΠΈΠ΄Ρ‹ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΈ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’ дальнСйшСм, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, информация ΠΎ Π²ΠΈΠ΄Π°Ρ… связи ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π½Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ связи «ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ»

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚!

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ связь Β«ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒΒ»?

Бвязи Β«ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒΒ» часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для получСния Π²Π°ΠΆΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для вСдСния бизнСса.

Бвязь «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» β€” это связь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… Ρ‚Π°Π±Π»ΠΈΡ†, ΠΊΠΎΠ³Π΄Π° каТдая запись ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. НапримСр, связь Ρ‚ΠΈΠΏΠ° «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ сотрудниками ΠΈ ΠΈΡ… слуТСбными автомобилями. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊ ΡƒΠΊΠ°Π·Π°Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΊΠ°ΠΊ ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘Π»ΡƒΠΆΠ΅Π±Π½Ρ‹ΠΉ транспорт».

Бвязи «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° со списком элСмСнтов, Π½ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ свСдСния ΠΎ Π½ΠΈΡ… зависят ΠΎΡ‚ Ρ‚ΠΈΠΏΠ°. НапримСр, Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сотрудники ΡΠ²Π»ΡΡŽΡ‚ΡΡ сотрудниками, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” субподрядчиками. Для сотрудников Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΈΡ… Π½ΠΎΠΌΠ΅Ρ€Π°, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ свСдСния. Для субподрядчиков Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° ΠΈ Ρ‚Π°Ρ€ΠΈΡ„ Π½Π° выставлСниС счСта. Π’ этом случаС Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ β€” «ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹», «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» ΠΈ «Π‘убподрядчики», Π° Π·Π°Ρ‚Π΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ связь «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ «ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹» ΠΈ «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» ΠΈ связь «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ «ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹» ΠΈ «Π‘убподрядчики».

ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ создании связи Β«ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒΒ»

Бвязи «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ связывания индСкса ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² качСствС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выступаСт ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ ΠΊΠ»ΡŽΡ‡, с индСксом Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΈΡ… значСния ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Часто Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠΉ способ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ связь β€” Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ поиска Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ «ΠšΠΎΠ΄ автомобиля» Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» ΠΏΠΎΠ»Π΅ΠΌ подстановки, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса «ΠšΠΎΠ΄ автомобиля» Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘Π»ΡƒΠΆΠ΅Π±Π½Ρ‹ΠΉ транспорт». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ случайноС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° автомобиля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ сущСствуСт.

Π’Π°ΠΆΠ½ΠΎ: ΠŸΡ€ΠΈ создании связи «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ» слСдуСт Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π΄ΡƒΠΌΠ°Ρ‚ΡŒ, трСбуСтся Π»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ для Π½Π΅Π΅ обСспСчСниС цСлостности Π΄Π°Π½Π½Ρ‹Ρ….

Π¦Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Access ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ порядок Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΌ удалСния связанных записСй. НапримСр, ΠΏΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ сотрудника ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ записи ΠΎ Π΅Π³ΠΎ Π»ΡŒΠ³ΠΎΡ‚Π°Ρ… ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ «Π›ΡŒΠ³ΠΎΡ‚Ρ‹». Но Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… связях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысла: Ссли ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ сотрудника, ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ удалялся ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ «ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ сотруднику.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ ΠΏΠΎ созданию связи Ρ‚ΠΈΠΏΠ° Β«ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒΒ»

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ связь «ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΎΠ΄Π½ΠΎΠΌΡƒ», Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠΎΠ»Π΅ подстановки. (Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ см. Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….) НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ сотрудникам, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ «Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ» ΠΏΠΎΠ»Π΅ «ΠšΠΎΠ΄ автомобиля». ПослС этого Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ мастСром подстановок для создания связи ΠΌΠ΅ΠΆΠ΄Ρƒ полями.

Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ конструктора Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π·Π°Ρ‚Π΅ΠΌ запуститС мастСр подстановок.

Π’ мастСрС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹Π±Ρ€Π°Π½ поиск Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅, поэтому Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π”Π°Π»Π΅Π΅.

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΌ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π”Π°Π»Π΅Π΅. Π’ рассмотрСнном ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ «Π‘Π»ΡƒΠΆΠ΅Π±Π½Ρ‹ΠΉ транспорт».

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² список Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ поля ΠΏΠΎΠ»Π΅ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Π”Π°Π»Π΅Π΅.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π—Π°Π΄Π°ΠΉΡ‚Π΅ порядок сортировки ΠΈ, ΠΏΡ€ΠΈ нСобходимости, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΡˆΠΈΡ€ΠΈΠ½Ρƒ поля.

Π’ послСднСм ΠΎΠΊΠ½Π΅ установитС Ρ„Π»Π°ΠΆΠΎΠΊ Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ цСлостности Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π“ΠΎΡ‚ΠΎΠ²ΠΎ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Russian (Pусский) translation by Yuri Yuriev (you can also view the original English article)

БСгодня ΠΌΡ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ нашС ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠ΅ Π² ΠΌΠΈΡ€ SQL ΠΈ связанных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ части этой сСрии ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с нСсколькими Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΌΡ‹ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°Ρ‡Π½Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с JOIN queries Π² SQL.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… SQL Π² дСйствии, просмотрСв SQL scripts, apps and add-ons Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ Envato.

НапоминаниС

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΈ создании Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π΄Ρ€Π°Π²Ρ‹ΠΉ смысл подсказываСт, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² сущностСй. НапримСр: ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹, Π·Π°ΠΊΠ°Π·Ρ‹, ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹, сообщСния. Но Π½Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ этими Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ. НапримСр, ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ Π΄Π΅Π»Π°ΡŽΡ‚ Π·Π°ΠΊΠ°Π·Ρ‹, Π° Π·Π°ΠΊΠ°Π·Ρ‹ содСрТат ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹. Π­Ρ‚ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ прСдставлСны Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SQL Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ запросов JOIN, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ.

БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. БСгодня ΠΌΡ‹ рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† с ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ запрос JOIN. БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² JOIN, ΠΈ ΠΌΡ‹ собираСмся ΡƒΠ·Π½Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°Π΅ΠΌ ΠΎΠ± ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ°Ρ… ON ΠΈ USING.

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ вас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± адрСсС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Customers ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Addresses. Если ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ адрСс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, это ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ «Один ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒΒ». Π˜ΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ распространСны. Наша Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π°, которая Π²ΠΊΠ»ΡŽΡ‡Π°Π»Π° адрСс вмСстС с ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΠΎΠ³Π»Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Customers Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«address_idΒ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ссылаСтся Π½Π° запись соотвСтствия Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Address. Π­Ρ‚ΠΎ называСтся «Foreign Key» ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для всСх Π²ΠΈΠ΄ΠΎΠ² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΡ‹ рассмотрим этот вопрос ΠΏΠΎΠ·ΠΆΠ΅.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтскими ΠΈ адрСсными записями ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ сущСствованиС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΅ΡΡ‚ΡŒ запись ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅Ρ‚ связанной записи адрСса.

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ «ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ» ΠΈ «ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ»

Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ. Рассмотрим Π²Π΅Π±-сайт e-commerce со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

Π’ этих случаях Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Β«ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ». Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ноль, ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько Π·Π°ΠΊΠ°Π·ΠΎΠ². Но Π·Π°ΠΊΠ°Π· ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ «ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ»

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ нСсколько экзСмпляров с ΠΎΠ±Π΅ΠΈΡ… сторон. НапримСр, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°ΠΊΠ°Π· ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ нСсколько элСмСнтов. И ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π°ΠΊΠ°Π·Π°Ρ….

Для этих ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π°Π±Π»ΠΈΡ†Π° Items_Orders ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Ρ†Π΅Π»ΡŒ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Β«ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ» ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΈ Π·Π°ΠΊΠ°Π·Π°ΠΌΠΈ.

Π’ΠΎΡ‚ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‚Π°ΠΊΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ записи items_orders Π² Π³Ρ€Π°Ρ„ΠΈΠΊ, это ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки

Π­Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ с самой собой. НапримСр, Ρƒ вас Π΅ΡΡ‚ΡŒ Ρ€Π΅Ρ„Π΅Ρ€Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π½Π° ваш Π²Π΅Π±-сайт. Π’Π°Π±Π»ΠΈΡ†Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ 102 ΠΈ 103 Π±Ρ‹Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ 101.

На самом Π΄Π΅Π»Π΅ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Β«ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ», ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². Π’Π°ΠΊΠΆΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ дрСвовидная структура:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Один ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° ноль, ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ нСсколько ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². К ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΠΊΡ‚ΠΎ.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ссылку Β«ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ», Π²Π°ΠΌ понадобится Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π²Ρ€ΠΎΠ΄Π΅ Ρ‚ΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅.

Foreign Keys

Π”ΠΎ сих ΠΏΠΎΡ€ ΠΌΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… концСпциях. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя Π²ΠΎΠΏΠ»ΠΎΡ‚ΠΈΡ‚ΡŒ ΠΈΡ… Π² Тизнь с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SQL. Для этой части Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Foreign Keys.

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΌΡ‹ всСгда ΠΈΠΌΠ΅Π»ΠΈ эти поля «**** _ id», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡΡ‹Π»Π°Π»ΠΈΡΡŒ Π½Π° столбСц Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ столбСц customer_id Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Orders являСтся столбцом Foreign Key:

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° MySQL Π΅ΡΡ‚ΡŒ Π΄Π²Π° способа создания столбцов Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ:

Π§Ρ‘Ρ‚ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Foreign Key

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π°ΠΊΠ°Π·ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Foreign Key:

Оба столбца (customers.customer_id ΠΈ orders.customer_id) Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ структуру Π΄Π°Π½Π½Ρ‹Ρ…. Если ΠΎΠ΄ΠΈΠ½ являСтся INT, Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ BIGINT, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² MySQL Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ InnoDB ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Foreign Keys. Но Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ позволят Π²Π°ΠΌ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ошибок. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, столбСц Foreign Key индСксируСтся автоматичСски, Ссли Π½Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ для Π½Π΅Π³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ индСкс.

Π‘Π΅Π· явной Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ†ΠΈΠΈ

Π’Π° ΠΆΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Π° Π·Π°ΠΊΠ°Π·ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создана Π±Π΅Π· явного объявлСния столбца customer_id ΠΊΠ°ΠΊ Foreign Key:

Π”Π°Π»Π΅Π΅ ΠΌΡ‹ собираСмся ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ JOIN-запросах.

Визуализация ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ

Моим Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм для проСктирования Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ Foreign Key являСтся MySQL Workbench.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ПослС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ SQL ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° своСм сСрвСрС. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ слоТных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ….

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

JOIN Queries

Для извлСчСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π±Π°Π·Ρ‹, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Π½Π°ΠΌ часто приходится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ JOIN queries.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ создадим Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π·Ρ†Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π£ нас 4 ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π£ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π΄Π²Π° Π·Π°ΠΊΠ°Π·Π°, Ρƒ Π΄Π²ΡƒΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π·Π°ΠΊΠ°Π·Ρƒ, Π° Ρƒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π½Π΅Ρ‚ Π·Π°ΠΊΠ°Π·Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ JOIN queries, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π² этих Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ….

ΠŸΠ΅Ρ€Π΅ΠΊΡ€Π΅ΡΡ‚Π½ΠΎΠ΅ соСдинСниС

Π­Ρ‚ΠΎ Ρ‚ΠΈΠΏ JOIN query ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли условиС Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ «Cartesian product» Ρ‚Π°Π±Π»ΠΈΡ†. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ каТдая строка ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ сопоставляСтся с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкой Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π’Π°ΠΊ ΠΊΠ°ΠΊ каТдая Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΠΌΠ΅Π»Π° 4 строки, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠ· 16 строк.

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово JOIN ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΎ запятой.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π΅Π½. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ соСдинСний.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ соСдинСниС

ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ JOIN query Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ имя ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ столбца. Π’ нашСм случаС ΠΎΠ±Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ столбСц customer_id. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, MySQL Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒΡΡ ΠΊ записям Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого столбца соотвСтствуСт Π΄Π²ΡƒΠΌ записям.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ соСдинСниС

Когда ΡƒΠΊΠ°Π·Π°Π½ΠΎ условиС соСдинСния, выполняСтся Inner Join. Π’ этом случаС Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ customer_id Π² ΠΎΠ±Π΅ΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ…. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌΠΈ Π½Π° Natural Join.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ‚Π΅ ΠΆΠ΅, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ нСбольшой Ρ€Π°Π·Π½ΠΈΡ†Ρ‹. Π‘Ρ‚ΠΎΠ»Π±Π΅Ρ† customer_id повторяСтся Π΄Π²Π°ΠΆΠ΄Ρ‹, ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ просто попросили Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ значСниям этих Π΄Π²ΡƒΡ… столбцов. Но сами ΠΎΠ½ΠΈ Π½Π΅ Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ нСсколько условий Π² запрос.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ON Clause

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ соСдинСний, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ON clause. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для помСщСния условий JOIN Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ условиС JOIN ΠΎΡ‚ условий WHERE. Но Π΅ΡΡ‚ΡŒ ΠΈ нСбольшая Ρ€Π°Π·Π½ΠΈΡ†Π° Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠœΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ это Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… LEFT JOIN.

USING Clause

USING clause ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ON, Π½ΠΎ ΠΎΠ½ΠΎ ΠΊΠΎΡ€ΠΎΡ‡Π΅. Если столбСц ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ имя Π² ΠΎΠ±Π΅ΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ…, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π³ΠΎ здСсь.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

На самом Π΄Π΅Π»Π΅ это ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° NATURAL JOIN, поэтому столбСц join (customer_id) Π½Π΅ повторяСтся Π΄Π²Π°ΠΆΠ΄Ρ‹ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ….

Π›Π΅Π²ΠΎΠ΅ (внСшнСС) соСдинСниС

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π₯отя Ρƒ Π­Π½Π΄ΠΈ Π½Π΅Ρ‚ Π·Π°ΠΊΠ°Π·ΠΎΠ², Π΅Π³ΠΎ запись всС Π΅Ρ‰Ρ‘ отобраТаСтся. ЗначСния ΠΏΠΎΠ΄ столбцами Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL.

Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для поиска записСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ. НапримСр, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ размСстили ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π·Π°ΠΊΠ°Π·Ρ‹.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Всё, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ сдСлали, это нашли NULL для order_id.

Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово OUTER являСтся Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ просто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ LEFT JOIN вмСсто LEFT OUTER JOIN.

Условия

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим запрос с условиСм.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ с Π­Π½Π΄ΠΈ ΠΈ Бэнди? LEFT JOIN Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π±Π΅Π· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π°ΠΊΠ°Π·ΠΎΠ². ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ эти Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ условиС NULL.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π£ нас Π­Π½Π΄ΠΈ, Π½ΠΎ Π½Π΅Ρ‚ Бэнди. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ это выглядит Π½Π΅ Ρ‚Π°ΠΊ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ON clause.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

ΠŸΡ€Π°Π²ΠΎΠ΅ (внСшнСС) соСдинСниС

RIGHT OUTER JOIN Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, Π½ΠΎ порядок Ρ‚Π°Π±Π»ΠΈΡ† ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

На этот Ρ€Π°Π· Ρƒ нас Π½Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² NULL, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°ΠΊΠ°Π· ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ запись ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ порядок Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ Π² LEFT OUTER JOIN.

ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСйкакоС минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй ΠΊΠ°ΠΊΠΎΠ΅ минимальноС количСство Ρ‚Π°Π±Π»ΠΈΡ† Π½ΡƒΠΆΠ½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ связи Π²ΠΈΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ для Π΄Π²ΡƒΡ… сущностСй

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ эти значСния NULL, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π° Customers находится Π½Π° ΠΏΡ€Π°Π²ΠΎΠΉ сторонС соСдинСния.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Бпасибо, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΡΡ‚Π°Ρ‚ΡŒΡŽ. НадСюсь, Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ! ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, оставляйтС свои ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ вопросы, ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ дня!

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ SQL scripts, apps and add-ons Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ Envato. Π’Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ прСдставлСниС ΠΎ возмоТностях Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… SQL, ΠΈ смоТСтС Π½Π°ΠΉΡ‚ΠΈ идСальноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ Π·Π° Π½Π°ΠΌΠΈ Π½Π° Twitter ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡˆΠΈΡ‚Π΅ΡΡŒ Π½Π° Nettuts + RSS Feed для получСния Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΏΠΎ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *