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

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

ПониманиС ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… значСниях

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ написанию ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ считаСтся Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠΌ Π² вашСм ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ случаС. Π’ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ строки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ Π²ΠΎ всСх ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°Ρ…, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ Π½Π°Π±ΠΎΡ€Ρƒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Π½Π΅ прСдоставляСт встроСнной ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΒ», поэтому Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ явно ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ сравнСния.

Часто ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΈΠ»ΠΈ содСрТат лишниС ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹. НапримСр, строка "Π’ΠΎΠ²Π°Ρ€ А" ΠΈ строка "Π’ΠΎΠ²Π°Ρ€ А " (с ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ Π² ΠΊΠΎΠ½Ρ†Π΅) с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния систСмы Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ записями. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ очистки часто трСбуСтся нормализация Π΄Π°Π½Π½Ρ‹Ρ…. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этого этапа ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ строки останутся Π² Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² всСгда ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅, какая ΠΈΠΌΠ΅Π½Π½ΠΎ строка Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅. Часто Π²Π°ΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ запись с максимальной Π΄Π°Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ наибольшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ суммы, Π° Π½Π΅ просто ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΠΎΠΏΠ°Π²ΡˆΡƒΡŽΡΡ.

Анализ структуры Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ критичСски Π²Π°ΠΆΠ½ΠΎΠ΅ врСмя. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ строк, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° очистки ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ врСмя выполнСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² дСсятки Ρ€Π°Π·. ВсСгда тСстируйтС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π½Π° Ρ€Π΅ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΠ΅Ρ‚ΠΎΠ΄ удалСния Ρ‡Π΅Ρ€Π΅Π· установку индСксов

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

ΠŸΡ€ΠΎΡ†Π΅ΡΡ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: создаСтся новая пустая Ρ‚Π°Π±Π»ΠΈΡ†Π° с Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ структурой, Ρ‡Ρ‚ΠΎ ΠΈ исходная. Π—Π°Ρ‚Π΅ΠΌ Π² Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ устанавливаСтся индСкс ΠΏΠΎ Ρ‚Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ. Π”Π°Π»Π΅Π΅ происходит цикличСскоС ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строк ΠΈΠ· старой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² Π½ΠΎΠ²ΡƒΡŽ. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строку, Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° выдаст ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ.

  • πŸš€ Высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… благодаря ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ индСксов.
  • πŸ›‘οΈ Гарантированная ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ структуры ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.
  • βš™οΈ Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ настройки: ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΏΠΎΠ»Π΅ΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ индСксС.

Код Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π΅Ρ€Π°Ρ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строки Π² Π±Π»ΠΎΠΊ ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ... Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. Если Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ индСкса, Ρ†ΠΈΠΊΠ» просто ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строкС, игнорируя Π΄ΡƒΠ±Π»ΡŒ.

НоваяВаблица = Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ();

НоваяВаблица.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НомСнклатура");

НоваяВаблица.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

// УстанавливаСм индСкс ΠΏΠΎ полю НомСнклатура

НоваяВаблица.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НомСнклатура", , Π˜ΡΡ‚ΠΈΠ½Π°);

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π°Π±Π»ΠΈΡ†Π° Π¦ΠΈΠΊΠ»

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°

НоваяБтрока = НоваяВаблица.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока.Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°);

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

// Π”ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½, пропускаСм строку

ΠšΠΎΠ½Π΅Ρ†ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Установка индСкса с Ρ„Π»Π°Π³ΠΎΠΌ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ = Π˜ΡΡ‚ΠΈΠ½Π°) Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строк. Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΡƒΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΉ строкС Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° станСт Π΄ΡƒΠ±Π»Π΅ΠΌ, индСкс это Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ автоматичСски.

πŸ’‘

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ строку с ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ поля (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послСднюю Π΄Π°Ρ‚Ρƒ измСнСния), ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отсортируйтС ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠΎ этому полю ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄ Ρ†ΠΈΠΊΠ»ΠΎΠΌ копирования.

ИспользованиС Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ для ΡƒΠ½ΠΈΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ строк

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто оказываСтся Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΌ β€” использованиС запроса ΠΊ самой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ°. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ позволяСт Π½Π΅ просто ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Ρ‹, Π½ΠΎ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (суммированиС, поиск максимума) Π² процСссС очистки.

Π’Ρ‹ создаСтС запрос, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² сСкции ВЫБРАВЬ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ поля, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π° Π² сСкции Π‘Π“Π Π£ΠŸΠŸΠ˜Π ΠžΠ’ΠΠ’Π¬ ПО пСрСчисляСтС Ρ‚Π΅ ΠΆΠ΅ поля. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° автоматичСски схлопнСт ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ записи. Π­Ρ‚ΠΎ особСнно ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π΅Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… полях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ просто ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ.

Π“Π»Π°Π²Π½ΠΎΠ΅ прСимущСство этого способа β€” отсутствиС нСобходимости ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Вся тяТСлая Ρ€Π°Π±ΠΎΡ‚Π° лоТится Π½Π° встроСнный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ запросов 1Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ высоко ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ удалСния Π΄ΡƒΠ±Π»Π΅ΠΉ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Цикл с индСксом
Запрос с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ
ВрСмСнная Ρ‚Π°Π±Π»ΠΈΡ†Π°
Π‘Π²ΠΎΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ

Однако стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ использовании Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π²Ρ‹ тСряСтС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ вошли Π² ΠΊΠ»ΡŽΡ‡ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ. Если Π² Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ строках Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ статусы, останСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Ρ‡Π°Ρ‰Π΅ всСго ΠΏΠ΅Ρ€Π²ΠΎΠ΅ попавшССся ΠΈΠ»ΠΈ NULL, Π² зависимости ΠΎΡ‚ настроСк).

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

Запрос.ВСкст =

"ВЫБРАВЬ

| Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅.НомСнклатура КАК НомСнклатура,

| БУММА(Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ

|ΠŸΠžΠœΠ•Π‘Π’Π˜Π’Π¬ Π’Π’_Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚

|Π˜Π—

| Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ КАК Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅

|

|Π‘Π“Π Π£ΠŸΠŸΠ˜Π ΠžΠ’ΠΠ’Π¬ ПО

| Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅.НомСнклатура";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅", Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π°Π±Π»ΠΈΡ†Π°);

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

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Для ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π° Π² памяти становится ΡƒΠ·ΠΊΠΈΠΌ мСстом, цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… (Π² ΡΠ΅ΡΡΠΈΠΎΠ½Π½ΡƒΡŽ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ), Π³Π΄Π΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² происходит срСдствами Π‘Π£Π‘Π”.

ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ особСнно эффСктивСн Π² сСрвСрном контСкстС. Π’Ρ‹ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ конструкции ΠŸΠžΠœΠ•Π‘Π’Π˜Π’Π¬. Π—Π°Ρ‚Π΅ΠΌ выполняСтС запрос с использованиСм Π ΠΠ—Π›Π˜Π§ΠΠ’Π¬ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΎΠΉ с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ, записывая Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ здСсь являСтся ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ автоматичСски ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ сСанса ΠΈΠ»ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π½ΠΎ явноС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Π£Π”ΠΠ›Π˜Π’Π¬ Π’Π Π•ΠœΠ•ΠΠΠ«Π• Π’ΠΠ‘Π›Π˜Π¦Π« являСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ программирования.

ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ Π˜Π½Π΄Π΅ΠΊΡΡ‹ Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹
Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π½Π° ΠΌΠ°Π»Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Высокая Высокая БрСдняя
Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… БрСдняя Высокая ΠžΡ‡Π΅Π½ΡŒ высокая
Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° БрСдняя Низкая Высокая
Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ НСт Π”Π° Π”Π°
ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ быстрСС Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ…?

Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ хранятся Π½Π° сторонС сСрвСра Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Π£Π‘Π” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ свои ΠΌΠΎΡ‰Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ индСксации ΠΈ сортировки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС, Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² памяти процСсса 1Π‘.

Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²

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

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с сотнями тысяч ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ записСй ситуация ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ мСняСтся. ΠœΠ΅Ρ‚ΠΎΠ΄ с Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΈ индСксами ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя ΠΈΠ·-Π·Π° постоянных ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ вставкС. Запросы с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ рост Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ эффСктивными.

ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° β€” ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ этап ΠΏΠ΅Ρ€Π΅Π΄ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΡƒΡŽ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ встроСнныС инструмСнты ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для Π·Π°ΠΌΠ΅Ρ€Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… участков ΠΊΠΎΠ΄Π°. НС ΠΏΠΎΠ»Π°Π³Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° ΠΈΠ½Ρ‚ΡƒΠΈΡ†ΠΈΡŽ, всСгда провСряйтС Ρ„Π°ΠΊΡ‚Ρ‹.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ возмоТности языка ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ. ВсСгда свСряйтС синтаксис Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² с Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ синтаксичСской справкой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π² Ρ€Π°Π±ΠΎΡ‚Π΅.

β˜‘οΈ Π§Π΅ΠΊ-лист ΠΏΠ΅Ρ€Π΅Π΄ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ Π΄ΡƒΠ±Π»Π΅ΠΉ

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

ЧастыС ошибки ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅

Одной ΠΈΠ· самых распространСнных ошибок являСтся ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈ Β«Π½Π° Π»Π΅Ρ‚ΡƒΒ» Π²ΠΎ врСмя ΠΎΠ±Ρ…ΠΎΠ΄Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π² Ρ†ΠΈΠΊΠ»Π΅ Для КаТдого ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСпрСдсказуСмому повСдСнию, пропуску элСмСнтов ΠΈΠ»ΠΈ Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΡŽ. ВсСгда создавайтС Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ для Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

Π’Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊ рСгистру Π² строковых полях. ЗначСния "Москва" ΠΈ "москва" Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ, Ссли Π½Π΅ привСсти ΠΈΡ… ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΌΡƒ Π²ΠΈΠ΄Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ БтрНиТ() ΠΈΠ»ΠΈ Π‘Ρ‚Ρ€Π’Π΅Ρ€Ρ…() ΠΏΠ΅Ρ€Π΅Π΄ сравнСниСм ΠΈΠ»ΠΈ установкой индСкса.

НС стоит ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ NULL-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сцСнариях пустыС значСния Π² ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… полях ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒΡΡ систСмой Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΏΡ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ΅. Явная Π·Π°ΠΌΠ΅Π½Π° пустых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π° Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ.

πŸ’‘

Π—ΠΎΠ»ΠΎΡ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ: Никогда Π½Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°. ВсСгда Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

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

МоТно Π»ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈ Π±Π΅Π· создания Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹?

ВСхничСски ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ строки ΠΈΠ· исходной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠΎ индСксу, проходя Ρ†ΠΈΠΊΠ» с ΠΊΠΎΠ½Ρ†Π° ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ. Однако этот ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ рСкомСндуСтся ΠΈΠ·-Π·Π° Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ быстродСйствия ΠΈ высокого риска ошибок. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ β€” стандарт ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠ² 1Π‘.

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈ, Ссли ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ рСгистром Π±ΡƒΠΊΠ²?

ΠŸΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ привСсти всС строковыС ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ поля ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ рСгистру. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅ΠΌΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π² запросС ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅, ΠΊΡƒΠ΄Π° Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ БтрНиТ(), ΠΈ устанавливайтС индСкс ΡƒΠΆΠ΅ ΠΏΠΎ Π½Π΅ΠΉ.

Π§Ρ‚ΠΎ быстрСС: Ρ†ΠΈΠΊΠ» с индСксом ΠΈΠ»ΠΈ запрос с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ?

На ΠΌΠ°Π»Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… (Π΄ΠΎ 5000 строк) Ρ€Π°Π·Π½ΠΈΡ†Π° нСсущСствСнна. На Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… запрос с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ ΠΈΠ»ΠΈ использованиС Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ Ρƒ Ρ†ΠΈΠΊΠ»Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ опСрация выполняСтся Π½Π° сторонС Π‘Π£Π‘Π” ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠ»Π°Π½ΠΎΠΌ выполнСния.

Как ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΈΠ»ΠΈ послСднюю запись ΠΏΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ Π΄ΡƒΠ±Π»Π΅ΠΉ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ запрос с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отсортировав Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠΎ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ полю (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎ Π΄Π°Ρ‚Π΅). Π’ запросС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ МИН() ΠΈΠ»ΠΈ МАКБ() для Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ значСния ΠΈΠ· Π³Ρ€ΡƒΠΏΠΏΡ‹ Π΄ΡƒΠ±Π»Π΅ΠΉ.