ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ms sql
ΠΡΠ΅, ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ ΠΏΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ MS SQL
ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ ΡΠ°ΡΡΠΈΡΠΈΡΡ Π·Π½Π°Π½ΠΈΡ ΠΎΠ± ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ Π² MS SQL Server. ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ Π½ΠΈΡ , ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΡΡΡΡΠΊΡΡΡΠ΅. Π£Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ. ΠΡΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡΠΈΡΠ°ΠΉΡΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² sql server
Π Π°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Π² ΠΏΠΎΠ½ΡΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (indexes) β ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ . ΠΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ³ΡΠ°Π΅Ρ Π²Π°ΠΆΠ½Π΅ΠΉΡΡΡ ΡΠΎΠ»Ρ Π² ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ sql ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
Π‘Π»ΠΎΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π² Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎ ΡΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π±ΡΡΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΡΠΎΠΊΠ°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π·Π°ΠΏΡΠΎΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠΊΠΎΡΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡ Π² ΠΊΠ½ΠΈΠ³Π΅, ΠΊΠ°ΡΠ°ΡΡΠΈΡ ΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ, ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΏΠ΅ΡΠ΅ΡΠ½Ρ ΡΠ΅ΠΌ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΡΠ΅ΠΌΠ΅. ΠΠ° Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Π·Π°ΡΡΠΎΠ½ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π·Π°Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ, sql server Π½Π°ΠΉΠ΄Π΅Ρ Π½ΡΠΆΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Ρ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΡΡΡΡΠΎ Π²ΡΠ±Π΅ΡΠ΅Ρ Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΎ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠ·ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΡ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΡΠΎΠΊΡΠ°ΡΠ°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΠΈΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ½ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ ΠΏΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. Π’Π°ΠΊΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ. ΠΠ½Π΄Π΅ΠΊΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈ ΠΏΠΎ ΡΡΡΠΈ Π²ΡΡΡΡΠΏΠ°ΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΡ sql-ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ.
Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π° Π²ΡΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠ°Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΡΠΎΠΌΠ΅:
ΠΠ± ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΈ ΠΊΡΡΠ°Ρ
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΎΠ·Π΄Π°Π½Π° ΠΈ Π² Π½Π΅ΠΉ Π΅ΡΠ΅ Π½Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΎΠ½Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΠΊΡΡΠ° Π΄Π°Π½Π½ΡΡ (Heap). Π Π½Π΅ΠΉ Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Ρ Π°ΠΎΡΠΈΡΠ½ΠΎ, Π±Π΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°. ΠΠΎΡΠΎΠΌΡ ΠΈΡ ΠΈ Π½Π°Π·ΡΠ²Π°ΡΡ Β«ΠΊΡΡΠ°ΠΌΠΈΒ».
ΠΡΠ»ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, sql server ΠΏΡΠΎΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ Π΅Π΅ (Table scan). ΠΠΎΠΊΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π΅ Π·Π°Π΄Π°Π½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ (UNIQUE CONSTRAINT, UNIQUE INDEX ΠΈΠ»ΠΈ PRIMARY KEY), ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΎΡΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ (Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ) ΠΈ Π²ΡΠ±Π΅ΡΠ΅Ρ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΡΠΎ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ indexes:
ΠΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΡΠΊΠΎΡΠΈΡΡ ΠΏΠΎΠΈΡΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΠ»Ρ ΡΠ°Π±Π»ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ.
Indexes ΠΈΠΌΠ΅ΡΡ ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ:
ΠΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ½ΠΈΠΆΠ°ΡΡ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ ΡΡΡΠ΅ΠΊΡ Π΄Π»Ρ Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π½ΠΎ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π‘ΡΡΡΠΊΡΡΡΠ°
ΠΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ (structure). ΠΠ½ΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ·:
ΠΡΠ΅ ΠΎΠ½ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ B-Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² (B-tree). ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌ ΡΠ·Π»Π΅ (Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΌΡΡ Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ) ΠΈ ΠΏΠΎ ΡΡΡΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Β«Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ Π΄Π²Π΅ΡΡΡΒ». ΠΡΠΎΡ ΡΠ·Π΅Π» ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ΄Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΊΠ»ΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ.
Π Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π»ΠΈΡΡΡΡ Π΄Π΅ΡΠ΅Π²Π° (ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌΠΈ ΡΠ·Π»Π°ΠΌΠΈ). ΠΠ»ΠΈΠ½Ρ Π²Π΅ΡΠΎΠΊ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ.
Π ΡΠ°ΠΊΠΎΠΌ Π΄Π΅ΡΠ΅Π²Π΅ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π° ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π΅ΡΠΊΠ°. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΠΏΡΠΈ Π»ΡΠ±ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠ½ΠΎΠ²Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ.
ΠΡΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Ρ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ·Π»Π° ΠΊ Π½ΠΈΠΆΠ½ΠΈΠΌ, ΠΏΡΠΎΡ ΠΎΠ΄Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Ρ ΠΈΡ . ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π»ΠΈΡΡΡΠ΅Π² (leaf level) ΠΏΠΎΠΈΡΠΊ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅ΡΡΡ, Ρ.ΠΊ. ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π’ΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
Π Microsoft SQL Server ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ: ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
ΠΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π΅Π³ΠΎ Π·Π°Π΄Π°ΡΠ° β ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅, ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ°. Π’Π°Π±Π»ΠΈΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΡΡ Π»ΠΈΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ (Clustered index), ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² Π΅Π΄ΠΈΠ½ΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ β Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ, Π»ΠΈΠ±ΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ. ΠΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Clustered index.
Π’Π°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π»ΠΈΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. Π‘ΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Clustered index Ρ ΡΠ°Π½ΠΈΡ Π² ΡΡΠΎΠ²Π½ΡΡ Π»ΠΈΡΡΡΠ΅Π².
ΠΡΠ»ΠΈ Ρ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅Ρ Clustered index, Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ PRIMARY KEY ΠΈ UNIQUE, ΠΎΠ½ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΠΎΠ³Π΄Π° Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ/ ΠΊΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ Nonclustered indexes, ΡΠΎ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Clustered index Π²ΡΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½Ρ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ Π»ΠΈΡΡΡΠ΅Π² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΡΡΡΠ»ΠΊΠΈ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ Π½Π° ΡΡΡΠΎΠΊΠΈ Ρ Π½ΠΈΠΌΠΈ.
ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ (Nonclustered) Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ:
Π§ΡΠΎΠ±Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ.
ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π°:
Nonclustered indexes ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ (included column). Π Π·Π½Π°ΡΠΈΡ, Π»ΠΈΡΡΡΡ Π±ΡΠ΄ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, Π²ΠΎΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π½Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π»ΠΈΠ±ΠΎ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° Π΄Π»ΠΈΠ½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠ»Π°Π²Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° Nonclustered indexes:
Nonclustered indexes ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ Π½Π° Π»ΡΠ±ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ , Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΠΈΠΌΠ΅ΡΡΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ°ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΌΠΈ, ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΌΠΈ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ .
Π€ΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠΉ
Π€ΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠΌ (Filtered) ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Nonclustered index, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ ΡΠΈΠ»ΡΡΡΠ° Π΄Π»Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΡΡΠΈ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅.
Π’ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Filtered index ΡΠΏΠΎΡΠΎΠ±Π΅Π½:
Π‘ΠΎΡΡΠ°Π²Π½ΠΎΠΉ
Π‘ΠΎΡΡΠ°Π²Π½ΡΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ:
ΠΡΠΎΡΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠΎΡΡΠ°Π²Π½ΡΡ , ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π»ΠΈΡΡ ΠΏΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π°:
ΠΡΠ»ΠΈΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ. ΠΠ½ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎ ΡΠ°ΠΌΠΈΠ»ΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ, Ρ.ΠΊ. ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΠ΄Π΅ΠΉ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΠ°ΠΌΠΈΠ»ΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ ΠΏΠΎ ΡΠ°ΠΌΠΈΠ»ΠΈΠΈ, ΠΈ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ.
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π½Π°ΠΈΠ²ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ, ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΡΠΌ Π² CREATE INDEX. ΠΠΎΡΠΎΠΌΡ, Π² ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅. Π§ΡΠΎΠ±Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠ°ΠΌ Π·Π°ΠΏΡΠΎΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΡΠ»Π°ΡΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ²Π΅Ρ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅Π³ΠΎ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Query Optimizer ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΡΡΠΊΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°.
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ (Unique) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΡΡΡΠΎΠΊ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ ΠΈ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡΠΈΠΉ, ΡΡΠΎ Π² ΠΊΠ»ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ , ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΡ ΡΡ. ΠΠ»Ρ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²ΡΠ΅Ρ index columns, Π½ΠΎ Π½Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ»ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Unique index ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠ΄Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π°ΡΠΈΠ°ΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΊΠ»ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ.
SQL ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Unique index Π΄Π»Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΏΡΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ UNIQUE Π»ΠΈΠ±ΠΎ PRIMARY KEY. ΠΠΎ ΠΎΠ½ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π»ΠΈΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ Π΄ΡΠ±Π»Π΅ΠΉ Π² ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ.
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠΌ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠ°:
ΠΠΎΠ»ΠΎΠ½ΠΎΡΠ½ΡΠΉ
ΠΠΎΠ»ΠΎΠ½ΠΎΡΠ½ΡΠΌ (Columnstore) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄Π°Π½Π½ΡΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ . ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Columnstore indexes Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄Π»Ρ ΠΊΡΡΠΏΠ½ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ, Ρ.ΠΊ. ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³ΡΡ:
ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΉ
ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΌ (Spatial) Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠΈΠΏ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΠ»Π±ΡΡ Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ (ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠΈΠΏΠ°Ρ Geography ΠΈΠ»ΠΈ Geometry). Spatial index ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½ΠΈΡ .
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° β Π½Π°Π»ΠΈΡΠΈΠ΅ PRIMARY KEY Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ.
ΠΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ
ΠΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ (Full-text) ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ»ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ°Ρ , Π³Π΄Π΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² ΡΠΈΠΌΠ²ΠΎΠ»Π°Ρ .
ΠΠ΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ Full-text indexes Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Β«Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈΒ». ΠΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ:
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ (Covering) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΌΠ΅ Ρ Π»ΠΈΡΡΡΠ΅Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π·Π°ΠΏΠΈΡΡΠΌ ΡΠ°Π±Π»ΠΈΡΡ. Π Π·Π½Π°ΡΠΈΡ, Π² Covering index Ρ ΡΠ°Π½ΠΈΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π·Π°ΠΏΡΠΎΡ. ΠΠΎΡΠΎΠΌΡ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ . ΠΠ΄Π½Π°ΠΊΠΎ, ΠΎΠ½ΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ, ΠΏΠΎΡΠΎΠΌΡ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΠΈΠΌΠΈ Π½Π΅ ΡΡΠΎΠΈΡ.
XML-ΠΈΠ½Π΄Π΅ΠΊΡ
XML β ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠΏ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅. ΠΠ½ Π΄Π΅Π»Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π½ΠΈΠΌ.
ΠΠ½Π΄Π΅ΠΊΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ
ΠΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ Π΄Π°Π½Π½ΡΡ :
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ms sql server
ΠΠΎΠ»ΡΠ·Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°, ΠΏΠΎΡΠΎΠΌΡ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΊΡΠ°ΠΉΠ½Π΅ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ. Π‘ΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΡΠ»ΡΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π° Π½Π΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ β ΠΏΠΎΠ½ΠΈΠ·ΠΈΡΡ.
ΠΠ½Π΄Π΅ΠΊΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, ΠΏΠΎΡΠΎΠΌΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ»Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΡΠΎ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ Π³ΡΠΎΠ·ΠΈΡΡ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ ΡΡΠ΄ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊ ΠΈ ΠΊ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ ΠΊ Π½ΠΈΠΌ.
ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΡΠΈ ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π΅Π΅, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π±ΡΡΡΡΡΠΉ ΠΏΠΎΠΈΡΠΊ Π΄Π°Π½Π½ΡΡ Π»ΠΈΠ±ΠΎ ΡΠ½ΠΈΠΆΠ°ΡΡ, Ρ.ΠΊ. ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π±ΡΠ΄ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΈ ΠΎΠ½ΠΈ, Π΄Π°Π±Ρ ΠΎΡΡΠ°ΠΆΠ°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ. Π Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Ρ Π½ΠΈΠΌΠΈ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅.
ΠΠΎΡΠΎΠΌΡ, ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠ»Π°Π½Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ²Π΅ΡΠΎΠ² ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ²:
ΠΠ°ΠΏΡΠΎΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
ΠΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π²ΡΠΎΡΡΠΌ Π²Π°ΠΆΠ½ΡΠΌ ΠΏΡΠ½ΠΊΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΡΡΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ²:
Π‘ΠΏΠΎΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ms sql server Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π²ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ². Π ΡΡΠΎΠΌ ΠΏΠΎΠΌΠΎΠ³ΡΡ:
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ°ΠΊ ΠΎΡΠΌΠ΅ΡΠ°Π»ΠΎΡΡ Π²ΡΡΠ΅, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° sql ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° (PRIMARY KEY). ΠΠΎΠ³Π΄Π° ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΡΠΊΠ°ΠΌΠΈ.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Clustered index Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Management Studio. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ:
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΡΠ°Π½Π΅Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Transact-SQL CREATRE INDEX.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Nonclustered index ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Management Studio Π»ΠΈΠ±ΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ T-SQL.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Nonclustered index Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ
ΠΠΎΡΠ½Π΅ΠΌΡΡ Π²ΠΎΠΏΡΠΎΡΠ°, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Nonclustered index Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ΠΌ, ΡΡΠΎ Π² ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΡΠΎΠ»Π±ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΏΠΎΠΊΡΡΠ²Π°Π»ΡΡ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, Ρ.Π΅. Π²ΠΊΠ»ΡΡΠ°Π» Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ. ΠΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎΠΊΡΡΡ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΡΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ Π±Π΅Π· ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ. ΠΡΠΎ Π²Π΅Π΄Π΅Ρ ΠΊ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π½Π° Π΄ΠΈΡΠΊΠ΅.
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎΠΈΡ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π² ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΡΠ°Π·ΠΌΠ΅Ρ Π΅Π³ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ. Π Π·Π½Π°ΡΠΈΡ, Π΄Π»Ρ Π΅Π³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ INSERT, UPDATE, DELETE ΠΈ MERGE Π² Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π°Π½Π½ΡΡ .
ΠΠ»Ρ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Management Studio:
ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠΉ Nonclustered index. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ T-SQL ΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ CREATE NONCLUSTERED INDEX Π² WHERE ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ. Π’Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ Π²Π°ΠΆΠ½ΡΠ΅ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ .
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ·Π½Π°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ΄Π°Π»ΡΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Management Studio. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ:
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ T-SQL DROP INDEX (DROP INDEX IX_NonClustered ON TestTable). ΠΠ΄Π½Π°ΠΊΠΎ Π΅Ρ Π½Π΅Π»ΡΠ·Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ PRIMARY KEY ΠΈ UNIQUE. Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΡ , ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ ALTER TABLE Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ DROP CONSTRAINT.
ΠΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
Π§ΡΠΎΠ±Ρ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ:
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ WHERE
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠΎΠΌ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΈ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ (selectivity) ΡΡΠ»ΠΎΠ²ΠΈΡ.
ΠΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΠΏΡΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΎΡ 80% ΠΈ Π²ΡΡΠ΅. ΠΡΠΎΡΡΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΡΠ»ΠΈ Π² ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠΈΡΠΊΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ AND, ΡΠΎ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ β ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Π²ΠΊΠ»ΡΡΠΈΠ² Π² Π½Π΅Π³ΠΎ ΡΡΠ°Π·Ρ Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΈΡΡ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WHERE ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT.
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π»ΡΠ±ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ sql ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π² ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²ΠΊΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ . Π‘ΠΏΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠΏΡΠΎΠ²ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ . Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·Π±ΡΠΎΡΠ°ΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΉ Π±Π°Π·Π΅.
ΠΠΎΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΡΠΎΠΌΡ ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. Π ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ β ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΡΡΠ½ΠΈΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠ½Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ ΡΡΠΎ Π²ΡΠ±ΡΠ°ΡΡ.
Π§ΡΠΎΠ±Ρ Π²ΡΡΡΠ½ΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ sys.dm_db_index_physical_stats. ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π²ΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ½Ρ ΡΠ°Π±Π»ΠΈΡ Π΄Π»Ρ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ Π±Π°Π·Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ:
SELECT OBJECT_NAME(T1.object_id) AS NameTable,
T1.index_id AS IndexId,
T2.name AS IndexName,
T1.avg_fragmentation_in_percent AS Fragmentation
FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) AS T1
LEFT JOIN sys.indexes AS T2 ON T1.object_id = T2.object_id AND T1.index_id = T2.index_id
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ Microsoft, ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π±ΡΠ΄ΡΡ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΡΠΎΠ²Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π Π΅Π³ΠΎ Ρ ΠΎΠ΄Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ. ΠΠΎΠ²ΠΎΡΡ ΠΏΡΠΎΡΡΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ β Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡ. Π ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ Π»Π΅ΠΆΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠ·Π»ΠΎΠ² (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ).
ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ β Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ:
ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ½ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΡΠ°ΡΠΎΠ³ΠΎ ΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ.
ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. Π ΡΡΠΎΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ:
ΠΡΠΎ Π²ΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ Π² Microsoft SQL Server. ΠΠ·ΡΡΠ°ΠΉΡΠ΅ ΠΈΡ , Π° Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡ Π²ΠΎΠΏΡΠΎΡΡ β Π·Π°Π΄Π°Π²Π°ΠΉΡΠ΅. Π£Π΄Π°ΡΠΈ Π² ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ indexes ms sql.
ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠ°
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠ΅ Π²ΡΠ΅Π³Π΄Π° Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² SQL Server Π½Π° Π²ΡΠΎΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π» Π²ΡΡ ΡΡΡΠΎΠΊΡ. ΠΡΠ° ΡΠΈΡΡΠ°ΡΠΈΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ SQL Server Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. ΠΠΎΠ³Π΄Π° ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΌΡ Π½Π°Π·ΡΠ²Π°Π΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΊΡΡΠ²Π°Π΅Ρ Π²Π΅ΡΡ Π·Π°ΠΏΡΠΎΡ. ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠΎΠ³ΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°; Π² ΡΡΠΎΠΌ Π»Π΅Π³ΠΊΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π½Π° Π΄Π²ΡΡ ΠΏΠ»Π°Π½Π°Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°. Π ΡΠ°ΠΊΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ , ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 97% Π²ΡΠ΅ΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Π·Π°ΠΏΡΠΎΡ Π±Π΅Π· ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ Π² 32 ΡΠ°Π·Π° Π±ΡΡΡΡΠ΅Π΅. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅, Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΡΠ΅ΡΠ²Π΅ΡΡ SQL Server Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²ΡΠΎΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΊΡΡΠ²Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ»Π±Π΅Ρ CarrierTrackingNumber Π½Π΅ Π²ΡΠ±ΡΠ°Π½. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠ΅Π½Ρ Π΄ΠΎΡΠΎΠ³ΠΎ ΡΡΠΎΠΈΡ, Π²ΡΠΎΡΠΎΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 1% ΠΎΡ ΠΎΠ±ΡΠ΅ΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°. ΠΠΎΡΠΌΠΎΡΡΠ΅Π² Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ Messages (Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ), ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ,. ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΡΡΡΡ Π·Π°ΠΏΡΠΎΡ, SQL Server Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ 2 ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ (Π²ΠΌΠ΅ΡΡΠΎ 709 ΡΡΠΈΡΡΠ²Π°Π½ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°).
ΠΡ ΡΠ±Π΅Π΄ΠΈΠ»ΠΈΡΡ, ΡΡΠΎ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²ΡΠΈΠ³ΡΡΡ Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎΠ»Π±ΡΡ ΠΈΠ· Π·Π°ΠΏΡΠΎΡΠ°, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½ΡΠΆΠ½Ρ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅. ΠΠΎ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½Ρ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ Π²Π΅ΡΠΎΡΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT ΡΠΈΠΌΠ²ΠΎΠ» Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΈ (*) ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ°ΠΊ ΠΏΡΠΎΡΠ΅ ΡΠΎΡΡΠ°Π²ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ.
ΠΠ·Π³Π»ΡΠ½ΡΠ² Π½Π° ΠΏΠ»Π°Π½ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ΅Π½. ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ 5 ΡΡΠΈΡΡΠ²Π°Π½ΠΈΠΉ ΡΡΡΠ°Π½ΠΈΡ, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΡΠ°Π½ΡΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ 709.
ΠΠ½Π΄Π΅ΠΊΡΡ Π² Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠ°Ρ
ΠΠ½Π΄Π΅ΠΊΡΡ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈ ΠΈΡ ΡΠΎΠ»Ρ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΡΠ°ΡΡΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ. ΠΠ°Π»Π΅Π΅ ΠΈΡΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠ·ΡΠΊΠ° Transact-SQL, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ: CREATE INDEX, ALTER INDEX ΠΈ DROP INDEX. ΠΠΎΡΠΎΠΌ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΅Π΅ Π²Π»ΠΈΡΠ½ΠΈΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π΄Π°Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ±ΡΠΈΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ
Π‘ΠΈΡΡΠ΅ΠΌΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±ΡΡΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ. ΠΠ½Π΄Π΅ΠΊΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π±ΡΡΡΡΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΡΠΎΠΊΠ°ΠΌ Π΄Π°Π½Π½ΡΡ . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ Π°ΡΠΏΠ΅ΠΊΡΠΎΠΌ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ².
ΠΠ½Π΄Π΅ΠΊΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΡΡ ΠΎΠ΄Π΅Π½ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ (Π°Π»ΡΠ°Π²ΠΈΡΠ½ΡΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ) ΠΊΠ½ΠΈΠ³ΠΈ. ΠΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ Π½Π°ΠΉΡΠΈ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΡΠ΅ΠΌΡ Π² ΠΊΠ½ΠΈΠ³Π΅, ΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΌΠΎΡΡΠΈΠΌ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅, Π½Π° ΠΊΠ°ΠΊΠΈΡ ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΠΊΠ½ΠΈΠ³ΠΈ ΡΡΠ° ΡΠ΅ΠΌΠ° ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ, Π° ΠΏΠΎΡΠΎΠΌ ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π½ΡΠΆΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ Π΅Π΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΠ½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅.
ΠΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΅ΡΡΡ Π΄Π²Π΅ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ°Π·Π½ΠΈΡΡ:
Π§ΠΈΡΠ°ΡΠ΅Π»Ρ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΠΌΠΎΠΌΡ ΡΠ΅ΡΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ, ΠΈ Π·Π° Π½Π΅Π³ΠΎ ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΡ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ². (ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π½ΠΎ ΡΡΠΈ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΌ ΡΠΈΡΠ»Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°Π΅Π².)
ΠΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΊΠ½ΠΈΠ³ΠΎΠΉ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΠΌΡ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ. Π ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡΡ, ΠΈΠ½Π΄Π΅ΠΊΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ»ΠΈ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ ΡΡΡΠΎΠΊ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ ΠΈ ΠΈΡΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ (ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ), ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠΉ Π½Π°Π±ΠΎΡ, Π΅ΡΠ»ΠΈ Π΄Π»Ρ Π½Π΅Π΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠΈΡΠΊΠ° Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WHERE. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΈΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½, ΡΠ΅ΠΌ Π΄ΠΎΡΡΡΠΏ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΡΠ½ΡΠ΅ΡΡΡ Π΄Π°Π»Π΅Π΅.
ΠΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΠ°Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π½Π°Π·ΡΠ²Π°ΡΡΠΈΡ ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° (index entry), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΊΠ»ΡΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΠΎΡ ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠ΅, ΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ Π² ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΠ³ΡΠ°Π΅Ρ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°, ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΏΡΠΎΡ ΠΎΠ΄Π° ΠΏΠΎ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°, ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΏΡΠΎΡ ΠΎΠ΄Π° ΠΏΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ Π΄Π°Π½Π½ΡΡ . ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Π΄Π»Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΊΠΎΡΠ΅ΠΉ Π²ΡΠ΅Π³ΠΎ, ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π±Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°, ΡΠ΅ΠΌ Π΄Π»Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΠ½Π΄Π΅ΠΊΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Database Engine ΡΠΎΠ·Π΄Π°ΡΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° B+. B+-Π΄Π΅ΡΠ΅Π²ΠΎ ΠΈΠΌΠ΅Π΅Ρ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠ΅ ΡΠ°ΠΌΡΠ΅ Π½ΠΈΠΆΠ½ΠΈΠ΅ ΡΠ·Π»Ρ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π½Π° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΡΠΎΠ²Π½Π΅ΠΉ ΠΎΡ Π²Π΅ΡΡΠΈΠ½Ρ (ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ·Π»Π°) Π΄Π΅ΡΠ΅Π²Π°. ΠΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΡΡΡΠΊΡΡΡΠ° B+-Π΄Π΅ΡΠ΅Π²Π° Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ Employee ΠΈ ΠΏΡΡΠΌΠΎΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΡΠΎΠΊΠ΅ Π² ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 25348 Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° Id. (ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ° Employee ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π° ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΡ Id.) ΠΠ° ΡΡΠΎΠΌ ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ B+-Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ·Π»Π°, ΡΠ·Π»ΠΎΠ² Π΄Π΅ΡΠ΅Π²Π° ΠΈ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΠ·Π»ΠΎΠ², ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡ Π½ΡΠ»Ρ ΠΈ Π±ΠΎΠ»ΡΡΠ΅:
ΠΠΎΠΈΡΠΊ Π² ΡΡΠΎΠΌ Π΄Π΅ΡΠ΅Π²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 25348 ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΠΊΠΎΡΠ½Ρ Π΄Π΅ΡΠ΅Π²Π°, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠΈΡΠΊ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ°, Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌ ΡΠ·Π»Π΅ ΡΠ°ΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ 29346, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΡΠ·Π΅Π», ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. Π ΡΡΠΎΠΌ ΡΠ·Π»Π΅ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 28559, Π²ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠ΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ΡΠ·Π΅Π» Π΄Π΅ΡΠ΅Π²Π°, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΡΠΎΡ ΡΠ·Π΅Π» ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΡΠΊΠΎΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 25348. ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ² ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·Π²Π»Π΅ΡΡ Π΅Π³ΠΎ ΡΡΡΠΎΠΊΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ. (ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΌ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΈΡΠΊ ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.)
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠΈΡΠΊΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΡΠΎΠΊ ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ Π΅Π³ΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡΠΈ Π»ΡΠ±ΡΡ ΡΡΡΠΎΠΊΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π·Π° ΠΎΡΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°. Π ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ (Ρ.Π΅. ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ) ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ΅ΠΌ Π΄Π°Π»ΡΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΠ°Ρ ΡΡΡΠΎΠΊΠ°.
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄Π²Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠΈΠΏΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΡΡΠΈΠΌΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Ρ.ΠΊ. ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅Π»ΡΠ·Ρ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. ΠΠΎΠΈΡΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ·Π»Π° B+-Π΄Π΅ΡΠ΅Π²Π° ΠΏΠΎ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊ ΡΠ·Π»Π°ΠΌ Π΄Π΅ΡΠ΅Π²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΡΠ·Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π² Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ (doubly linked list), Π½Π°Π·ΡΠ²Π°ΡΡΠΈΠΉΡΡ ΡΠ΅ΠΏΠΎΡΠΊΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡ (page chain).
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ, ΡΡΠΎ Π΅Π³ΠΎ ΡΠ·Π»Ρ Π΄Π΅ΡΠ΅Π²Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΡ . (Π£Π·Π»Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.) Π’Π°Π±Π»ΠΈΡΠ°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ (ΡΠ²Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠ²Π½ΠΎ), Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ. Π‘ΡΡΡΠΊΡΡΡΠ° B+-Π΄Π΅ΡΠ΅Π²Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅:
ΠΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ΅Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Ρ.Π΅. Π² ΡΡΠΎΠ»Π±ΡΠ΅, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΡΠ»ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΈΡΡΠ΅ΠΌΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΡΡΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΡΠ΅ΡΡΡΠ΅Ρ Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊ ΡΡΡΠΎΠΊΠ°ΠΌ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΌ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΠΎΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΠΏΠΎΠΈΡΠΊ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ
Π‘ΡΡΡΠΊΡΡΡΠ° Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ, Π½ΠΎ Ρ Π΄Π²ΡΠΌΡ Π²Π°ΠΆΠ½ΡΠΌΠΈ ΠΎΡΠ»ΠΈΡΠΈΡΠΌΠΈ:
Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ;
ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ.
ΠΡΠ»ΠΈ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΡΠΎΠ·Π΄Π°Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°Ρ . Π‘ΡΡΡΠΊΡΡΡΠ° B+-Π΄Π΅ΡΠ΅Π²Π° Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅:
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΠΏΠΎΠΈΡΠΊ Π΄Π°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π΄Π²ΡΠΌΡ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° ΡΠ°Π±Π»ΠΈΡΡ:
Π ΠΎΠ±ΠΎΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π²Π΅Π»ΠΈΠΊΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡΡ, ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΅Π³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΡ, ΡΡΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
Π―Π·ΡΠΊ Transact-SQL ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈΡΡ Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΈΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ . ΠΡΠ΅ ΡΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡ Π½Π°Ρ ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX. ΠΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ index_name Π·Π°Π΄Π°Π΅Ρ ΠΈΠΌΡ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΠΌΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ table_name. Π‘ΡΠΎΠ»Π±Π΅Ρ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ column1. Π§ΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΡΡΡΡΠΈΠΊΡ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ.
ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠΎΠ»Π±ΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ VARBINARY(max), BIGINT ΠΈ SQL_VARIANT, ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ UNIQUE ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΡΠ΅ (Ρ.Π΅. Π½Π΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ) Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π²ΡΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΡΠ»ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ UNIQUE Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΠΎ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ (ΡΡΠΎΠ»Π±ΡΠ°Ρ ) ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΡΡ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ CLUSTERED Π·Π°Π΄Π°Π΅Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ NONCLUSTERED (ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ) ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ 249 Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Database Engine Π±ΡΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Ρ ΡΠ±ΡΠ²Π°ΡΡΠΈΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ASC ΠΏΠΎΡΠ»Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠΎΠ»Π±ΡΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Ρ Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠΈΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠ°, Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ DESC ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠ±ΡΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ°Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ. Π‘ ΡΠ±ΡΠ²Π°ΡΡΠΈΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΡΡΠ°Π²Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π° ΡΡΠΎΠ»Π±ΡΠ°Ρ , Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ Π² ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΡ .
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ INCLUDE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΡΠ·Π»ΠΎΠ² Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠΌΠ΅Π½Π° ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΡΠΏΠΈΡΠΊΠ΅ INCLUDE Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ, ΠΈ ΡΡΠΎΠ»Π±Π΅Ρ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΈ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΉ.
Π§ΡΠΎΠ±Ρ ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΏΠΎΠ½ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° INCLUDE, Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ (covering index). ΠΡΠ»ΠΈ Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Ρ.ΠΊ. ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΌΠ΅ΡΡΠΎΠ½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΏΠΎ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. Π’Π°ΠΊΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ. ΠΠΎΡΡΠΎΠΌΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½Π°.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ FILLFACTOR Π·Π°Π΄Π°Π΅Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° FILLFACTOR ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 1 Π΄ΠΎ 100. ΠΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ n=100 ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π° 100%, Ρ.Π΅. ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠ·Π»Π° ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°, Π½Π΅ ΠΎΡΠ½ΠΎΡΡΡΠ°ΡΡΡ ΠΊ ΡΠ·Π»Ρ, Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Π²ΡΡΠ°Π²ΠΊΠΈ Π½ΠΎΠ²ΡΡ ΡΡΡΠΎΠΊ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡ. (ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, n=0, ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, Π° ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ.)
ΠΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° FILLFACTOR ΠΌΠ΅ΠΆΠ΄Ρ 1 ΠΈ 99 ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±ΡΠ΄ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ n, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ n=60 ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ 40% ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Π²ΡΡΠ°Π²ΠΊΠΈ ΡΡΡΠΎΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ. (Π‘ΡΡΠΎΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ INSERT ΠΈΠ»ΠΈ UPDATE.) Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ n=60 Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΡΠΌΠ½ΡΠΌ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ, Π΄Π°Π½Π½ΡΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°ΡΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΡΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ. ΠΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° FILLFACTOR ΠΌΠ΅ΠΆΠ΄Ρ 1 ΠΈ 99 ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ FILLFACTOR Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ. ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΎΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Ρ ΠΈΠΌΠ΅ΡΡΠΈΠΌΠΈΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΈ Π·Π°Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°. ΠΠ»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° FILLFACTOR ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ALTER INDEX.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ PAD_INDEX ΡΠ΅ΡΠ½ΠΎ ΡΠ²ΡΠ·Π°Π½ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ FILLFACTOR. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ FILLFACTOR Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π·Π°Π΄Π°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ ΠΎΡ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΡΡΡΠ°Π½ΠΈΡ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ PAD_INDEX ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° FILLFACTOR ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠ°ΠΊ ΠΈ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ Π΄Π°Π½Π½ΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ DROP_EXISTING ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π΄Π°Π»Π΅Π΅ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ «ΠΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°».
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ SORT_IN_TEMPDB ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ tempdb Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΠΈΡ ΡΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π΅ΡΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ tempdb ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π° Π½Π° Π΄ΡΡΠ³ΠΎΠΌ Π΄ΠΈΡΠΊΠ΅, ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ IGNORE_DUP_KEY ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΡΠΊΡ Π²ΡΡΠ°Π²ΠΊΠΈ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΡ ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ. ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ INSERT Π²ΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°Ρ Π΄Π°Π½Π½ΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½, ΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ INSERT Π²ΡΡΠ°Π²ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ, Π½Π°ΡΡΡΠ°ΡΡΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠΈΡΡΠ΅ΠΌΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΌΠ΅ΡΡΠΎ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ΄Π°Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine Π½Π΅ Π²ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠ°ΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΊΠ»ΡΡΠ°, Π° ΠΏΡΠΎΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅Ρ ΠΈΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ. ΠΡΠ»ΠΈ ΠΆΠ΅ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, ΡΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΎ.
ΠΠΎΠ³Π΄Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ALLOW_ROW_LOCKS Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ (ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ on), ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΡΡΡΠΎΠΊ. ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ALLOW_PAGE_LOCKS, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΡΡΡΠ°Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ΅. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ STATISTICS_NORECOMPUTE ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΡΠ΅ΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ONLINE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ°Π½Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ Π»ΡΠ±ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ Π΅Π³ΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎ ΡΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ON ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠ»ΠΈ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ default), ΠΈΠ»ΠΈ Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅ (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ file_group).
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° Id ΡΠ°Π±Π»ΠΈΡΡ Employee:
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΡΠΌΠΈ. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ 80% ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΅ΡΠ»ΠΈ ΡΡΠΎΡ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΠΈΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (Π²ΠΊΠ»ΡΡΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL) Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, Π»ΡΠ±Π°Ρ ΠΏΠΎΠΏΡΡΠΊΠ° Π²ΡΡΠ°Π²ΠΈΡΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π² ΡΡΠΎΠ»Π±Π΅Ρ, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ³Π½ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π² ΡΠ»ΡΡΠ°Π΅ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
Π ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π½ΡΡΡΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π²ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΠ°Π½Π΅Ρ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° ΡΠΈΠΏΠ° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°: Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ Π²Π½Π΅ΡΠ½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. ΠΠ½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ , Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅, Π° Π²Π½Π΅ΡΠ½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΡΠΈ Π½Π°ΡΡΡΠ΅Π½ΠΈΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠ°Π½ΠΈΡ.
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ DMV, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ sys.dm_db_index_physical_stats. ΠΡΠΎ DMV Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΌΠ΅ ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΎΠ΄Π½Π° ΡΡΡΠΎΠΊΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ B+-Π΄Π΅ΡΠ΅Π²Π°. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ DMV ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΡΡΠΎΠΊ Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ Π΄Π°Π½Π½ΡΡ , Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ½ΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ sys.dm_db_index_physical_stats ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅. (ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ°Π±Π»ΠΈΡΡ Works_on. ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ DROP INDEX, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΏΠΎΠ·ΠΆΠ΅.)
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ sys.dm_db_index_physical_stats ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠ΅ΡΠ²ΡΠ΅ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ. Π§Π΅ΡΠ²Π΅ΡΡΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π·Π°Π΄Π°Π΅Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ°Π·Π΄Π΅Π»Π°, Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. (ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ NULL.)
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠΌΠΈ ΠΈΠ· ΡΡΠΎΠ»Π±ΡΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ ΡΡΠΎΠ»Π±ΡΡ avg_fragmentation_in_percent ΠΈ avg_page_space_used_in_percent. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ΅Π΄Π½ΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ , Π° Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°Π½ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ .
Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΠΎΡΠ»Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΡ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΎ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅, ΡΡΡ ΠΈ Π΄ΡΡΠ³ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ²:
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° sys.indexes;
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° sys.index_columns;
ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ sp_helpindex;
ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ² objectproperty;
ΡΡΠ΅Π΄Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Management Studio ΡΠ΅ΡΠ²Π΅ΡΠ° SQL Server;
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ DMV sys.dm_db_index_usage_stats;
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ DMV sys.dm_db_missing_index_details.
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° sys.indexes ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π±Π΅Π· ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΡΠ²Π»ΡΡΡΡΡ ΡΡΠΎΠ»Π±ΡΡ object_id, name ΠΈ index_id. Π‘ΡΠΎΠ»Π±Π΅Ρ object_id ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡ, Π° ΡΡΠΎΠ»Π±ΡΡ name ΠΈ index_id ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΈΠΌΡ ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ.
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° sys.index_columns ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°, ΡΠ²Π»ΡΡΡΠ΅Π³ΠΎΡΡ ΡΠ°ΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈΠ»ΠΈ ΠΊΡΡΠΈ. ΠΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° sys.indexes, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
Π‘ΠΈΡΡΠ΅ΠΌΠ½Π°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° sp_helpindex Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ± ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΡΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΠ΄Π΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ @db_object ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ, ΡΡΠ½ΠΊΡΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² objectproperty ΠΈΠΌΠ΅Π΅Ρ Π΄Π²Π° ΡΠ²ΠΎΠΉΡΡΠ²Π°: IsIndexed ΠΈ IsIndexable. ΠΠ΅ΡΠ²ΠΎΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π° Π²ΡΠΎΡΠΎΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΏΠΎΠ΄Π΄Π°Π΅ΡΡΡ Π»ΠΈ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ»Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄Ρ SQL Server Management Studio Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Databases, ΡΠ°Π·Π²Π΅ΡΠ½ΠΈΡΠ΅ ΡΠ·Π΅Π» Tables, Π² ΡΡΠΎΠΌ ΡΠ·Π»Π΅ ΡΠ°Π·Π²Π΅ΡΠ½ΠΈΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ Π΅Π΅ ΠΏΠ°ΠΏΠΊΡ Indexes. Π ΠΏΠ°ΠΏΠΊΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Indexes ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ²ΠΎΠΉΠ½ΠΎΠΉ ΡΠ΅Π»ΡΠΎΠΊ ΠΌΡΡΡΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΎΡΠΊΡΠΎΠ΅Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Index Properties ΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ ΡΡΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. (Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄Ρ Management Studio.)
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ sys.dm_db_index_usage_stats Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΆΠ΄Π°Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎΠΈΡΠΊΠ°, ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΡΠ΅ΡΡΠΈΠΊΠ° Π² ΡΡΠΎΠΌ DMV. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°ΡΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΡΠΎΠ±Ρ Π½Π° Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅, Π° ΠΊΠ°ΠΊΠΈΠ΅ ΠΌΠ΅Π½ΡΡΠ΅.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ALTER INDEX. ΠΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ALTER INDEX ΠΎΡΠ΅Π½Ρ ΡΡ ΠΎΠ΄Π΅Π½ Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX. ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, IGNORE_DUP_KEY ΠΈ STATISTICS_NORECOMPUTE, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX.
ΠΡΠΎΠΌΠ΅ Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ALTER INDEX ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ REBUILD, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°;
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ REORGANIZE, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΈΡ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ°;
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ DISABLE, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΈ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π°Ρ .
ΠΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΡΠΈ Π»ΡΠ±ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ INSERT, UPDATE ΠΈΠ»ΠΈ DELETE, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠ»ΠΈ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ, ΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°Π·Π±ΡΠΎΡΠ°Π½Π½ΠΎΠΉ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ½ΡΠΆΠ΄Π΅Π½ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎ ΠΏΠΎΠ½ΠΈΠΆΠ°Π΅Ρ ΠΎΠ±ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°ΡΡ (REBUILD) Π²ΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° REBUILD ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ALTER INDEX;
ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° DROP_EXISTING ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ REBUILD ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΡΠ»ΠΈ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΊΠ°Π·Π°ΡΡ ALL, Π±ΡΠ΄ΡΡ Π²Π½ΠΎΠ²Ρ ΡΠΎΠ·Π΄Π°Π½Ρ Π²ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ°Π±Π»ΠΈΡΡ. (Π Π°Π·ΡΠ΅ΡΠΈΠ² Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»ΡΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡ Π·Π°Π½ΠΎΠ²ΠΎ.)
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ DROP_EXISTING ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΡΠ²ΠΎΠΈΡ ΡΠ·Π»Π°Ρ Π΄Π΅ΡΠ΅Π²Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΏΡΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π½ΠΎΠ²Ρ Π²ΡΠ΅ Π΅Π΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° DROP_EXISTING ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ DROP_EXISTING Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΠΉ, ΡΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ REBUILD, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ.
Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠ°Π½ΠΈΡ ΡΠ·Π»ΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ DISABLE ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΡΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ½ΠΎΠ²Π° Π²ΠΊΠ»ΡΡΠ΅Π½. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²Π½Π΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅, ΡΡΠΎΠ±Ρ ΡΠ½ΠΎΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π½ΠΎΠ²Ρ. ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ REBUILD ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ALTER TABLE.
ΠΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π΅Π³ΠΎ ΡΠ·Π»Π°Ρ Π΄Π΅ΡΠ΅Π²Π°.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ DROP INDEX. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ, Ρ.ΠΊ. ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°ΡΡ Π²ΡΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ. (ΠΡΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠ»ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π² ΡΠ²ΠΎΠΈΡ ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΡΠ·Π»ΠΎΠ².) ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ DROP INDEX Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅:
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ DROP INDEX ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ MOVE TO, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ON ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX. ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΡΠ΄Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ , Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΡΠ·Π»ΠΎΠ² ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² Π½ΠΎΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² Π²ΠΈΠ΄Π΅ ΠΊΡΡΠΈ. ΠΠ»Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΡ.
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ DROP INDEX Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½Π΅ΡΠ²Π½ΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠ°ΠΊ PRIMARY KEY ΠΈ UNIQUE. Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅.
ΠΠ½Π΄Π΅ΠΊΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ sp_rename.
ΠΠ½Π΄Π΅ΠΊΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π² ΡΡΠ΅Π΄Π΅ Management Studio Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠΎ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΡΡΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΏΠΊΡ Indexes ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ Π² ΡΡΠ΅Π΄Π΅ Management Studio Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ Π² ΡΡΠΎΠΉ ΡΡΠ΅Π΄Π΅.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
Π₯ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine Π½Π΅ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΏΠΎ ΠΏΠ°ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½ ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π²ΡΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π°Π·Π΅. ΠΠΎ-Π²ΡΠΎΡΡΡ , Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ³ΠΎΠ΄Ρ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ , Π²ΡΡΠ°Π²ΠΊΠ° ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΊΠΎΠΉ Π²ΡΠ³ΠΎΠ΄Ρ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π±Π»ΠΈΡΠ°, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠΈΠΉ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΠΈΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ±ΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΡΠΌΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΡΠ°ΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅. ΠΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΡΠ²Π»ΡΡΡΡΡ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΎΠ±ΡΠΈΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ. Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΠΏΠΎΡΠΎΠ±Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈ ΡΠΈΠΏΠ° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, Π½Π΅ ΠΏΡΠΈΠ½Π΅ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡΠ·Ρ.
ΠΠ½Π΄Π΅ΠΊΡΡ ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ WHERE
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠΈΡΠΊΠ° Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠΎΠΌ, ΡΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΠΎΠ΄ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ (selectivity) ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈΠΌΠ΅Π΅ΡΡΡ Π² Π²ΠΈΠ΄Ρ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΡΡΠΎΠΊ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΊ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΡΡΠΎΠΊΠΎΠΉ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ. ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΠΎΠΈΡΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° Π±ΡΠ΄Π΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΠΏΡΠΈ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π½Π΅ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡΠ΅ΠΉ 5%.
Π‘ΡΠΎΠ»Π±Π΅Ρ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ 80% ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΌΠ΅Π½ΡΡΠ°Ρ Π»ΡΠ±ΡΡ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΠΌΡΡ Π·Π° ΡΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΡΡΡΠ΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠΈΡΠΊ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠΎ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π΄Π΅Π»Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ.
ΠΡΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ AND, Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WHERE ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ WHERE. Π ΡΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ AND ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π΄Π²Π° ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΡΡΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΠ½Π΄Π΅ΠΊΡΡ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
Π ΡΠ»ΡΡΠ°Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°. Π‘ΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΡΠ°ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠ»ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ PRIMARY KEY ΠΈ FOREIGN KEY Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°, Ρ.ΠΊ. ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ΡΠ²Π½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°.
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΈΠ»ΡΡΡΠΎΠΌ:
ΠΠ»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π²Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° Id Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Employee, ΠΈ ΡΡΠΎΠ»Π±ΡΠ° EmpId Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Works_on. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΡΠΎΠ»Π±ΡΠ° EnterDate.
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π·Π°ΠΏΡΠΎΡΠ° Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ (covering), ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Address ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ IX_Address_StateProvinceID. ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ»Π±ΡΠ° PostalCode Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π΄Π²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠΎΠ»Π±ΡΠ°. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ SELECT Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ, ΠΏΠΎΠΊΡΡΠ²Π°Π΅ΠΌΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠΈΡΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΡΠ·Π»ΠΎΠ² Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΏΠΎ ΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅, ΡΡΠΎ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, ΡΠ΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄, ΡΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅.
ΠΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ²
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²:
ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ²;
ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠ°;
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π½ΠΈΠΌΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ°Π±Π»ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. Π’Π°ΠΊΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ. ΠΡΠΈ Π΄Π²Π° ΡΠΈΠΏΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ² ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π΄Π°Π»Π΅Π΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π°Ρ .
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ
ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ, Ρ.Π΅. ΠΎΠ½ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π½Π° ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅ Π½Π΅ Ρ ΡΠ°Π½ΠΈΡΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ½ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΡΡΠΎΠΊΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅:
Π’Π°Π±Π»ΠΈΡΠ° Orders Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π΄Π²Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠ°: total ΠΈ shippeddate. Π‘ΡΠΎΠ»Π±Π΅Ρ total Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π²ΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², price ΠΈ quantity, Π° ΡΡΠΎΠ»Π±Π΅Ρ shippeddate Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ DATEADD ΠΈ ΡΡΠΎΠ»Π±ΡΠ° orderdate.
ΠΠΎΡΡΠΎΡΠ½Π½ΡΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Database Engine ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², Π³Π΄Π΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠ½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ . (ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ, Π΅ΡΠ»ΠΈ Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΈΡ ΠΈ ΡΠ΅Ρ ΠΆΠ΅ Π΄Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ.)
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ SET ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ON (ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΡΡΠΎΠ»Π±ΡΠ°):
ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ NUMERIC_ROUNDABORT Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ off.
ΠΡΠ»ΠΈ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠ° Π±ΡΠ΄ΡΡ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΡΡΠΎΠΊΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·Π»ΠΎΠ² ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ . Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° total ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Orders:
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ CREATE INDEX Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ total Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° Π±ΡΠ΄ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅.
Π‘ΡΠΎΠ»Π±Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ PERSISTED. ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π΄Π°ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π½Π°Π»ΠΈΡΠΈΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°, Π΄Π°ΠΆΠ΅ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½Π° ΡΡΠΎΠ»Π±ΡΠ°Ρ Ρ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ (float ΠΈΠ»ΠΈ real). (ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠ½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ .)