Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° слоТных ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π±Π΅Π· Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ понимания Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ язык запросов взаимодСйствуСт со справочными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Одной ΠΈΠ· самых частых Π·Π°Π΄Π°Ρ‡, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ программисты, являСтся Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ справочников ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ значСниям ΠΏΠΎΠ»Π΅ΠΉ Ρ‚ΠΈΠΏΠ° ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ использованиС синтаксиса констант пСрСчислСний часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам выполнСния ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ…ΡƒΠΆΠ΅, ΠΊ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π±Π΅Π· Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ строками ΠΈΠ»ΠΈ числами, пСрСчислСния Π² запросах 1Π‘ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ спСцифичСского ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ описанию констант. БистСма Π΄ΠΎΠ»ΠΆΠ½Π° Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΈΠΏΡƒ пСрСчислСния относится ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, особСнно Π² ситуациях, ΠΊΠΎΠ³Π΄Π° Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… сущСствуСт нСсколько пСрСчислСний с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ элСмСнтов. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ всС Π½ΡŽΠ°Π½ΡΡ‹ объявлСния, использования ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ запросов с пСрСчислСниями, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваш ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π» быстро ΠΈ прСдсказуСмо.

Бинтаксис объявлСния констант пСрСчислСний

Основной ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с пСрСчислСниями Π² тСкстС запроса Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² явном ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ элСмСнта. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ константы компилятором запросов. Если Π²Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пСрСчислСния просто ΠΊΠ°ΠΊ строку, систСма ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это ΠΊΠ°ΠΊ тСкст, Π° Π½Π΅ ΠΊΠ°ΠΊ ссылку Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ элСмСнт ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ логичСским ошибкам ΠΏΡ€ΠΈ сравнСнии.

Для объявлСния константы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ конструкция Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π˜ΠΌΡΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°). Π’ случаях, ΠΊΠΎΠ³Π΄Π° ΠΈΠΌΠ΅Π½Π° элСмСнтов содСрТат ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ» имСнования ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π½Π° этапС проСктирования ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ….

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ объявлСния константы для пСрСчислСния ВидыНомСнклатуры. Если Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹, относящиСся ΠΊ Π²ΠΈΠ΄Ρƒ"Услуга", запрос Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ВЫБРАВЬ

НомСнклатура.НаимСнованиС,

НомСнклатура.ВидНомСнклатуры

Π˜Π—

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура КАК НомСнклатура

Π“Π”Π•

НомСнклатура.ВидНомСнклатуры = Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.ВидыНомСнклатуры.Услуга)

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° использованиС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π—ΠΠΠ§Π•ΠΠ˜Π•. Π‘Π΅Π· Π½Π΅Π³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ запросов Π½Π΅ смоТСт ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ссылку Π½Π° элСмСнт пСрСчислСния. Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… старых вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ спСцифичСских Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… совмСстимости синтаксис ΠΌΠΎΠ³ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, Π½ΠΎ Π² соврСмСнных Ρ€Π΅Π»ΠΈΠ·Π°Ρ… 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 этот стандарт являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Если Π² вашСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π΅ΡΡ‚ΡŒ нСсколько пСрСчислСний с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ элСмСнтов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"Π§Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ" Π² пСрСчислСнии"БтатусыЗаказов" ΠΈ"БтатусыБчСтов"), ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌΠ΅Π½ΠΈ элСмСнта Π±Π΅Π· прСфикса Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ пСрСчислСния Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ нСоднозначности. ВсСгда ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ имя: ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π˜ΠΌΡΠ ΠΎΠ΄ΠΈΡ‚Π΅Π»Ρ.Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ автоподстановку Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ запросов (Ctrl+Space) для Π²Π²ΠΎΠ΄Π° ΠΈΠΌΠ΅Π½ пСрСчислСний. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ отсутствиС ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ Π² синонимах ΠΈ ΠΈΠΌΠ΅Π½Π°Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

ИспользованиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² запросах с пСрСчислСниями

ЖСсткая прописка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ пСрСчислСний прямо Π² тСкстС запроса допустима для статичСских ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ², Π½ΠΎ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ‡Π°Ρ‰Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° значСния пСрСчислСния ΠΈΠ· внСшнСго ΠΊΠΎΠ΄Π° Π½Π° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΡŒ запроса позволяСт Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ сохраняСт Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° запроса Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²Ρ‹ устанавливаСтС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ стандартныС срСдства языка. Π’ΠΈΠΏ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ значСния Π΄ΠΎΠ»ΠΆΠ΅Π½ строго ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡƒ поля Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ источника. Если ΠΏΠΎΠ»Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅Π‘ΡΡ‹Π»ΠΊΠ°, Ρ‚ΠΎ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта пСрСчислСния, Π° Π½Π΅ Π² строку.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ установки ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² ΠΊΠΎΠ΄Π΅ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ запроса:

Запрос = Новый Запрос;

Запрос.ВСкст ="ВЫБРАВЬ Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Бсылка Π˜Π— Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Π—Π°ΠΊΠ°Π·ΠšΠ»ΠΈΠ΅Π½Ρ‚Π° КАК Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π“Π”Π• Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Бтатус = &БтатусЗаказа";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("БтатусЗаказа", ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.БтатусыЗаказов.ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½);

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Запрос.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ;

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ. Π’Π°ΠΌ Π½Π΅ придСтся ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ тСкст запроса ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ статусу. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, использованиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² позволяСт эффСктивно ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ»Π°Π½Ρ‹ выполнСния запросов сСрвСром, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сказываСтся Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ высоконагруТСнных систСм.

  • πŸš€ ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² бСзопаснСС ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ строк, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ риск SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΉ (хотя Π² 1Π‘ это ΠΌΠ΅Π½Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ остаСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ).
  • πŸ“ Код становится Ρ‡ΠΈΡ‰Π΅ ΠΈ понятнСС: Π»ΠΎΠ³ΠΈΠΊΠ° формирования Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ.
  • βš™οΈ ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ списка элСмСнтов пСрСчислСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ тСксты запросов, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.
πŸ“Š Как Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚Π΅ пСрСчислСния Π² запрос?
ВСкстом запроса (Π—ΠΠΠ§Π•ΠΠ˜Π•(..))
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΠΈΠ· ΠΊΠΎΠ΄Π°
Π§Π΅Ρ€Π΅Π· Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ
Π§Π΅Ρ€Π΅Π· Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ нСскольким значСниям

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π΅ ΠΎΠ΄Π½ΠΎΠΌΡƒ, Π° нСскольким значСниям пСрСчислСния. НапримСр, Π½ΡƒΠΆΠ½ΠΎ вывСсти всС Π·Π°ΠΊΠ°Π·Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² статусах"Π’ Ρ€Π°Π±ΠΎΡ‚Π΅","На согласовании" ΠΈΠ»ΠΈ"ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΎΠΏΠ»Π°Ρ‚Ρ‹". Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ Π² языкС запросов 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π’ (IN), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ констант.

Бинтаксис списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Π’ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π±Ρ‹Π» ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ описан ΠΊΠ°ΠΊ константа пСрСчислСния. Ошибкой Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΠ΄Π½ΠΎΠΌ спискС ΠΈΠ»ΠΈ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· элСмСнтов. ВсС элСмСнты списка Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ‚ΠΈΠΏΡƒ пСрСчислСния, ΠΈΠ½Π°Ρ‡Π΅ сСрвСр 1Π‘ выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ².

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ списку статусов:

ВЫБРАВЬ

Π—Π°ΠΊΠ°Π·Ρ‹.НомСр,

Π—Π°ΠΊΠ°Π·Ρ‹.Π”Π°Ρ‚Π°,

Π—Π°ΠΊΠ°Π·Ρ‹.Бтатус

Π˜Π—

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π—Π°ΠΊΠ°Π·ΠšΠ»ΠΈΠ΅Π½Ρ‚Π° КАК Π—Π°ΠΊΠ°Π·Ρ‹

Π“Π”Π•

Π—Π°ΠΊΠ°Π·Ρ‹.Бтатус Π’

(

Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.БтатусыЗаказов.Новый),

Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.БтатусыЗаказов.Π’Π Π°Π±ΠΎΡ‚Π΅),

Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.БтатусыЗаказов.НаБогласовании)

)

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ способом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡ€ΠΈ динамичСском Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ списка, являСтся использованиС Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ значСния пСрСчислСния Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ соСдинСниС (Π›Π•Π’ΠžΠ• Π‘ΠžΠ•Π”Π˜ΠΠ•ΠΠ˜Π• ΠΈΠ»ΠΈ ВНУВРЕННЕЕ Π‘ΠžΠ•Π”Π˜ΠΠ•ΠΠ˜Π•) с основной Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ особСнно эффСктивСн, Ссли список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ формируСтся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π² интСрфСйсС ΠΈ Π΅Π³ΠΎ Π΄Π»ΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π’ (список констант) Π”ΠΎ 10-15 элСмСнтов Высокая ΠžΡ‚Π»ΠΈΡ‡Π½Π°Ρ
ВрСмСнная Ρ‚Π°Π±Π»ΠΈΡ†Π° + Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π›ΡŽΠ±ΠΎΠ΅ количСство БрСдняя (большС ΠΊΠΎΠ΄Π°) Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ (зависит ΠΎΡ‚ индСксов)
НСсколько условий Π˜Π›Π˜ 2-3 элСмСнта Низкая (Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΎ) БрСдняя

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π’ с ΠΎΡ‡Π΅Π½ΡŒ большим количСством элСмСнтов (Π±ΠΎΠ»Π΅Π΅ 50-100) Π΄Π»ΠΈΠ½Π° тСкста запроса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡΠΈΡ‚ΡŒ допустимыС Π»ΠΈΠΌΠΈΡ‚Ρ‹ ΠΈΠ»ΠΈ ΡƒΡ…ΡƒΠ΄ΡˆΠΈΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Π½Π° выполнСния. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ соСдинСния Ρ‚Π°Π±Π»ΠΈΡ† ΠΏΠΎ полям пСрСчислСний

Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† (JOIN) ΠΏΠΎ полям, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ Ρ‚ΠΈΠΏ ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅, являСтся стандартной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ свои ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠ°ΠΌΠ½ΠΈ. Π§Π°Ρ‰Π΅ всСго это трСбуСтся ΠΏΡ€ΠΈ построСнии ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ², Π³Π΄Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ тСкстовоС прСдставлСниС статуса ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· рСгистра свСдСний ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ здСсь β€” Ρ‚ΠΈΠΏΡ‹ соСдиняСмых ΠΏΠΎΠ»Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ совмСстимы.

Если Π²Ρ‹ соСдиняСтС ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² с рСгистром свСдСний, Π³Π΄Π΅ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ записи являСтся пСрСчислСниС, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² условии соСдинСния (ПО) Π²Ρ‹ Π½Π΅ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ пСрСчислСниС со строкой ΠΈΠ»ΠΈ числом. Π‘Π΅Ρ€Π²Π΅Ρ€ 1Π‘ строго слСдит Π·Π° Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. Если Π² рСгистрС свСдСний ΠΊΠ»ΡŽΡ‡ΠΎΠΌ слуТит ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅Π‘ΡΡ‹Π»ΠΊΠ°.ВидыАктивов, Ρ‚ΠΎ ΠΈ ΠΏΠΎΠ»Π΅ ΠΈΠ· основной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ ΠΊ этому Ρ‚ΠΈΠΏΡƒ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ соСдинСния:

ВЫБРАВЬ

Активы.НаимСнованиС,

ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΠΊΡ‚ΠΈΠ²ΠΎΠ².ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π˜Π—

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅Π‘Ρ€Π΅Π΄ΡΡ‚Π²Π° КАК Активы

ВНУВРЕННЕЕ Π‘ΠžΠ•Π”Π˜ΠΠ•ΠΠ˜Π• РСгистрБвСдСний.ΠžΠΏΠΈΡΠ°Π½ΠΈΡΠ’ΠΈΠ΄ΠΎΠ²ΠΠΊΡ‚ΠΈΠ²ΠΎΠ² КАК ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΠΊΡ‚ΠΈΠ²ΠΎΠ²

ПО Активы.ВидАктива = ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΠΊΡ‚ΠΈΠ²ΠΎΠ².ВидАктива

Π’ ситуациях, ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΈΠΏ поля Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† являСтся составным (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, БправочникБсылка.ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Π°Π˜Π»ΠΈΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅), прямоС соСдинСниС ΠΏΠΎ Ρ‚Π°ΠΊΠΎΠΌΡƒ полю с чистым пСрСчислСниСм Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ привСдСния Ρ‚ΠΈΠΏΠΎΠ². Π’Π°ΠΌ придСтся сначала ΠΎΡ‚ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ строки, Π³Π΄Π΅ составноС ΠΏΠΎΠ»Π΅ содСрТит Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° пСрСчислСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π’Π˜ΠŸΠ—ΠΠΠ§Π•ΠΠ˜Π― ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ.

Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с составными Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π² соСдинСниях?

Если ΠΏΠΎΠ»Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ составной Ρ‚ΠΈΠΏ, прямоС соСдинСниС с пСрСчислСниСм Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, ΠΊΡƒΠ΄Π° ΠΎΡ‚Π±Π΅Ρ€ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ с Π½ΡƒΠΆΠ½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ значСния, ΠΈ ΡƒΠΆΠ΅ Π·Π°Ρ‚Π΅ΠΌ выполняйтС соСдинСниС ΠΏΠΎ ΠΎΡ‡ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ полю.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ запросов с пСрСчислСниями

Π₯отя сами ΠΏΠΎ сСбС пСрСчислСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ лСгковСсными ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΈΡ… использованиС Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ρ‚Π°Π±Π»ΠΈΡ† (Table Scan), Ρ‡Ρ‚ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ….Optimizer сСрвСра 1Π‘ стараСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСксы, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли условиС поиска sargable (поисково-ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΠ΅). Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ поля с константой пСрСчислСния ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ являСтся sargable условиСм.

Однако, Ссли Π²Ρ‹ примСняСтС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊ полю пСрСчислСния Π² условии Π“Π”Π•, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚Π΅ Π΅Π³ΠΎ Π² строку для сравнСния, индСкс ΠΏΠΎ этому полю ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. ВсСгда ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ значСния"ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ". Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ конструкций Π²ΠΈΠ΄Π° Π•Π‘Π’Π¬NULL(ΠŸΠΎΠ»Π΅ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ, Π—ΠΠΠ§Π•ΠΠ˜Π•(..)) Π² условиях соСдинСния, Ссли это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ ΠΏΠ»Π°Π½ выполнСния.

Для Π°Π½Π°Π»ΠΈΠ·Π° Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ сСрвСр 1Π‘ выполняСт ваш запрос с пСрСчислСниями, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ получСния ΠΏΠ»Π°Π½Π° выполнСния. НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ"План выполнСния" Π² консолькС запросов ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π»ΠΈ индСкс ΠΏΠΎ полю пСрСчислСния ΠΈΠ»ΠΈ происходит ΠΏΠΎΠ»Π½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ"ПолноС сканированиС" Π½Π° большой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΏΡ€ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ статусу, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ индСкса ΠΏΠΎ этому полю Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅.

  • πŸ” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ индСксов ΠΏΠΎ полям пСрСчислСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΠΎΡ‚Π±ΠΎΡ€Π΅ (WHERE) ΠΈΠ»ΠΈ соСдинСнии (JOIN).
  • 🚫 Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ привСдСния Ρ‚ΠΈΠΏΠΎΠ² пСрСчислСний ΠΊ строкС Π² условиях Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ β€” это ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ индСксы.
  • ⚑ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ запросы для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΏΠ»Π°Π½ΠΎΠ² выполнСния сСрвСром.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ возмоТности Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… Ρ€Π°Π±ΠΎΡ‚Ρ‹ (толстый/Ρ‚ΠΎΠ½ΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚). ВсСгда свСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ инструмСнтов Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

πŸ’‘

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ поля пСрСчислСния с константой Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€"=" являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ способом Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСксы Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ЧастыС ошибки ΠΈ способы ΠΈΡ… устранСния

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, особСнно Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅, часто Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с пСрСчислСниями Π² запросах. Одна ΠΈΠ· самых распространСнных β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ имя элСмСнта пСрСчислСния Π±Π΅Π· указания Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² контСкстС, Π³Π΄Π΅ это Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ. Другая частая ошибка β€” сравнСниС пСрСчислСния с Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² Π²ΠΈΠ΄Π΅ строки ("Новый" вмСсто Π—ΠΠΠ§Π•ΠΠ˜Π•(..)), Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях нСявного привСдСния, Π½ΠΎ являСтся ΠΏΠ»ΠΎΡ…ΠΈΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ ΠΈ источником Π±Π°Π³ΠΎΠ².

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. Если Π²Ρ‹ΠΊΠΎ прописываСтС ΠΈΠΌΠ΅Π½Π° элСмСнтов пСрСчислСний Π² запросС, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° (английскиС), Π° Π½Π΅ синонимы (русскиС), Ссли ваша конфигурация ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΡΠ·Ρ‹Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ пСрСнос ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΡΠ·Ρ‹ΠΊΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ зависят ΠΎΡ‚ языка интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ нюанс связан с ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ имя элСмСнта пСрСчислСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅, всС запросы, Π³Π΄Π΅ это имя Π±Ρ‹Π»ΠΎ прописано тСкстом, пСрСстанут Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. ИспользованиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ пСрСчислСниям Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ΄Π΅ (ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π² запрос) Π΄Π΅Π»Π°Π΅Ρ‚ систСму Π±ΠΎΠ»Π΅Π΅ устойчивой ΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° запроса ΠΏΠ΅Ρ€Π΅Π΄ запуском

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

FAQ: Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ пСрСчислСния Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»Π°Ρ… рСгистров?

Π”Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ значСния пСрСчислСний Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π° для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, РСгистрНакоплСния.ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ.ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ). Бинтаксис остаСтся Ρ‚Π΅ΠΌ ΠΆΠ΅: Π“Π”Π• ПолС = Π—ΠΠΠ§Π•ΠΠ˜Π•(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅..). Однако ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π²Ρ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚Π΅, Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав ΠΎΡ‚Π±ΠΎΡ€Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ являСтся ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ΠΌ рСгистра.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли элСмСнт пСрСчислСния Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½ ΠΈΠ· ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ?

Если Π² запросС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ константа ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта, ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ запускС Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка компиляции запроса. НСобходимо Π½Π°ΠΉΡ‚ΠΈ всС мСста использования этого элСмСнта (поиск ΠΏΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ) ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π½Π° использованиС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ отсутствиС значСния Π² ΠΊΠΎΠ΄Π΅ ΠΏΠ΅Ρ€Π΅Π΄ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ запроса.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список пСрСчислСний ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ Π² запрос?

Π‘Π°ΠΌΡ‹ΠΉ эффСктивный способ β€” ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ сСрвСрС, Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΅Ρ‘ значСниями ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ списка Π²Ρ‹Π±ΠΎΡ€Π°) ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ эту Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² основной запрос для выполнСния соСдинСния.

Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π»ΠΈ пСрСчислСния Π² Π‘ΠšΠ” (БистСма Компоновки Π”Π°Π½Π½Ρ‹Ρ…)?

Π”Π°, Π² настройках Π‘ΠšΠ” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ пСрСчислСния Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π°. Π’ конструкторС запроса Π‘ΠšΠ” синтаксис Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ запросам. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ значСния пСрСчислСний ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· внСшнСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

ВлияСт Π»ΠΈ порядок пСрСчислСния констант Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Π’ Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ?

Π’ соврСмСнных вСрсиях сСрвСра 1Π‘ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ запросов ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ опрСдСляСт Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΉ порядок ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Ручная сортировка констант Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Π’ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ Π΄Π°Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠ³ΠΎ прироста ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Π½Π΅ рСкомСндуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ услоТняСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ΄Π°.

πŸ’‘

ΠŸΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ слоТных запросов с пСрСчислСниями Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΈΠΏ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² ΠΆΡƒΡ€Π½Π°Π» рСгистрации ΠΈΠ»ΠΈ Π² сообщСниС ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ запроса. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ быстро ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏ) ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² запрос.