sql ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ, Π½ΠΎ эффСктивный ΠΏΡ€ΠΈΠ΅ΠΌ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² SQL

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

НСдавно наткнулся Π½Π° простоС ΠΈ эффСктивноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ элСмСнтарной Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π° нСудобства ΠΈ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ. Π‘ΡƒΡ‚ΡŒ Π²ΠΎΡ‚ Π² Ρ‡Π΅ΠΌ:

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

Казалось Π±Ρ‹, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ измСнилось, Π½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Β«ΠΊΠΎΠ½Ρ†Π° Π±Π»ΠΎΠΊΠ°Β» Π² «строчном» ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π΄Π°Π΅Ρ‚ Π½Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ для Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ всСго этого Π±Π»ΠΎΠΊΠ° (ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π΅Π³ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ) Π½Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Π»ΠΎ, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΠ½Π΅Ρ† Π±Π»ΠΎΠΊΠ°, Π° просто ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ символы β€˜—‘ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ Β«Π½Π°Ρ‡Π°Π»ΠΎ Π±Π»ΠΎΠΊΠ°Β»

Если Π±Ρ‹ ΠΌΡ‹ Π½Π΅ помСстили Β«ΠΊΠΎΠ½Π΅Ρ† Π±Π»ΠΎΠΊΠ°Β» Π²Π½ΡƒΡ‚Ρ€ΡŒ строчного коммСнтария, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½ΠΎ, ΠΈ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π±Ρ‹ ΠΎΡˆΠΈΠ±ΠΊΡƒ Incorrect syntax near β€˜*’

ΠžΡΡ‚Π°Π΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ΄ΠΈΠ²Π»ΡΡ‚ΡŒΡΡ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ с ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ, Π² своС врСмя, ΠΏΡ€ΠΎΡˆΠ»ΠΈ ΠΌΠΈΠΌΠΎ этого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅, Π½ΠΎ спСцифичСскиС куски ΠΊΠΎΠ΄Π° Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС, ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ своим ΠΊΠΎΠ΄ΠΎΠΌ.

Врассировка

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ этого ΠΆΠ΅ Ρ‚Ρ€ΡŽΠΊΠ° T-SQL позволяСт Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ Β«ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт».

Π’ ΠΎΠΊΠ½Π΅ сообщСний появится трассировка:

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

И всС это достигаСтся ΠΏΡƒΡ‚Π΅ΠΌ коммСнтирования ΠΎΠ΄Π½ΠΎΠΉ строки исходного тСкста.

ΠžΡ‚Π»Π°Π΄ΠΊΠ°

Π‘Π»ΡƒΡ‡Π°Π»ΠΎΡΡŒ Π»ΠΈ Π²Π°ΠΌ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ запрос со слоТным Π½Π°Π±ΠΎΡ€ΠΎΠΌ условий ΠΎΡ‚Π±ΠΎΡ€Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ совсСм Π½Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ оТидалось?

Π’Π΅ΠΏΠ΅Ρ€ΡŒ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‰Π΅, ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ работоспособности всСх ΠΈΠ»ΠΈ части этих условий

Или ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π³Π»ΡƒΠ±ΠΈΠ½ΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ скрипта

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт ΠΌΠ½Π΅ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ вСсь скрипт Π±Π΅Π· выполнСния ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° самом Π΄Π΅Π»Π΅ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° я Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŽ, Ρ‡Ρ‚ΠΎ всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΊΠ°ΠΊ слСдуСт.

Π£Π²Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ Π°Π²Ρ‚ΠΎΡ€ ΠΏΡ€ΠΈΠ²Π΅Π» ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования этого Ρ‚Ρ€ΡŽΠΊΠ° для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ сами, это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π’ любом ISQL Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, запуститС DBArtisan, ΠΈ скопируйтС Ρ‚ΡƒΠ΄Π° этот тСкст.

SQL β€” это ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Ссли ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, стандартизированный язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π‘Π£Π‘Π” прСобраТаСтся Π² соотвСтствии с трСбованиями, ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹ΠΌΠΈ ΠΊ Π½Π΅ΠΌΡƒ создатСлями Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π’ MS SQL β€” это Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ T-SQL, Π² Oracle ΠΌΡ‹ примСняСм PL/SQL, Π² ΠΏΡ€ΠΎΡ‡ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… β€” вносятся свои ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ особСнности синтаксиса ΠΈ повСдСния. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это выглядит для MS SQL:

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

Π― Ρ€Π΅ΡˆΠΈΠ» ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ²ΡˆΠΈΠΉΡΡ ΠΌΠ½Π΅ Ρ‚Ρ€ΡŽΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Oracle. МоТно Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ поставляСмыС вмСстС с Oracle срСдства, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π² DBArtisan, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Π‘Π£Π‘Π”.

Π’ DBArtisan я ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ ΠΎΠΊΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° SQL, ΡƒΠΊΠ°Π·Π°Π», Ρ‡Ρ‚ΠΎ этот Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ связан ΡƒΠΆΠ΅ с Π‘Π” Oracle ΠΈ пСрСнСс Π² Π½Π΅Π³ΠΎ скрипт ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²Ρ‹ΡˆΠ΅:

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

Π― Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вставил тСкст запроса. Π’ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΡ€Π°ΡΠ½ΡƒΡŽ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ Ρƒ строки 13?
Π­Ρ‚ΠΎ автоматичСский синтаксис-Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ DBArtisan сигнализируСт, Ρ‡Ρ‚ΠΎ SQL тСкст Π½Π΅ соотвСтствуСт ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚Π° SQL. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° сайтС Oracle ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»Π°, Ρ‡Ρ‚ΠΎ, нСсмотря Π½Π° графичСскиС синтаксичСскиС схСмы Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, Oracle Β«Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅Β» ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ сработали!

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

Π•Ρ‰Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ SQL ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, сильно ускоряСт ΠΈ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… ошибок написания Ρ€Π΅ΠΆΠΈΠΌ Code Completion. Если Π²Π°ΠΌ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° соврСмСнных языках программирования Π² срСдах быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Delphi ΠΈΠ»ΠΈ C++Builder, Java Designer ΠΈΠ»ΠΈ Eclipse, Π²Ρ‹ с Π½Π΅ΠΉ Π·Π½Π°ΠΊΠΎΠΌΡ‹: ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π½Π°Π±ΠΎΡ€Π° тСкста, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ сам ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Π΅Ρ‚ подходящиС ΠΏΠΎ контСксту ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ синтаксичСскиС элСмСнты) ΠΈ подставляСт ΠΈΡ… Π² тСкст Π·Π° вас ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΈΠ· списка. DBArtisan ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ контСкста исходя ΠΈΠ· ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π‘Π£Π‘Π” Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°, ΠΈΠ· списка Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² схСмы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ источника Π΄Π°Π½Π½Ρ‹Ρ….

Если ΠΏΡ€ΠΈ написании слоТного ΠΊΠΎΠ΄Π° Π½Π° SQL Π²Π΄Ρ€ΡƒΠ³ выясняСтся, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ внСсти ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ измСнСния Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ схСмы, Π½Ρƒ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² Ρ…Ρ€Π°Π½ΠΈΠΌΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ просто ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π΅Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ (Π² спСциализированном Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅), Π²Ρ‹Π΄Π΅Π»ΠΈΠ² Π΅Π΅ имя прямо Π² тСкстС Π½Π° SQL ΠΈ Π²Ρ‹Π·Π²Π°Π² ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΡ‹ΡˆΠΊΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Hyperlink Object Action.

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

Как ΠΈ любой тСкст, скрипты ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° SQL ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅. Но Ссли Π²Ρ‹ профСссионал, Π²Ρ‹ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ часто Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с SQL, Ρ‚ΠΎ Π²Π°ΠΌ ΡƒΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ достаточно наличия подсвСтки синтаксиса ΠΈ автоматичСского пСрСформатирования ΠΊΠΎΠ΄Π°, особСнно, Ссли Π²Π°ΠΌ приходится ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Π‘Π£Π‘Π”.

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

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

Π˜Π»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΡΠ°ΠΌΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠΎ PostgreSQL

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

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

ΠžΠ΄Π½ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с Π΄Π²ΡƒΡ… дСфисов () ΠΈ Π»ΠΈΠ±ΠΎ находятся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ строкС, Π»ΠΈΠ±ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π·Π° лСксСмами SQL (ΠΌΠΎΠ΄ΡƒΠ»ΡŒ лСксичСского Ρ€Π°Π·Π±ΠΎΡ€Π° PostgreSQL Π½Π΅ считаСт ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ лСксСмами, Π° всС символы, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ , ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠ°ΠΊ пропуски). ΠŸΡ€ΠΈΠΌΠ΅Ρ€ однострочного коммСнтария ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² листингС 3.11.

Листинг 3.11. ΠžΠ΄Π½ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ /* ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ */. Π’Π°ΠΊΠΎΠΉ способ оформлСния ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π½Π°ΠΊΠΎΠΌ программистам Π‘, Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ PostgreSQL ΠΈ компилятором Π‘ сущСствуСт ΠΎΠ΄Π½ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅: ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ PostgreSQL ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ. Π˜Π½Π°Ρ‡Π΅ говоря, Ссли Π²Π½ΡƒΡ‚Ρ€ΠΈ многострочного коммСнтария имССтся Π΄Ρ€ΡƒΠ³ΠΎΠΉ многострочный ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Ρ‚ΠΎ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ */ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ коммСнтария Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ внСшний ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ многострочного коммСнтария ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² листингС 3.12.

Листинг 3.12. ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
Π—Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ° (Π±Π΅Π· смСТного символа косой Ρ‡Π΅Ρ€Ρ‚Ρ‹) Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ особой ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ Π² коммСнтариях. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ Π±Ρ‹Π»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² листинг 3.12 ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ эстСтичСским сообщСниям
.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Π˜Ρ‚Π°ΠΊ, ΠΊΠΎΠΌΠ°Π½Π΄Π° SQL состоит ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… лСксСм, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, константой ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ символом. Π’ Ρ‚Π°Π±Π». 3.7 структура ΠΊΠΎΠΌΠ°Π½Π΄ SQL поясняСтся Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ простой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SELECT.

Π’Π°Π±Π»ΠΈΡ†Π° 3.7. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ запрос SQL.

SELECTid, nameFROMstates
Π’ΠΈΠΏ Π»Π΅ΠΊΡΠ΅ΠΌΡ‹ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
ОписаниСКомандаИмСна полСйИмя ΡΠ΅ΠΊΡ†ΠΈΠΈΠ˜ΠΌΡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT содСрТит ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова SELECT ΠΈ FROM. ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово FROM с лСксСмой states ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΡΠ΅ΠΊΡ†ΠΈΡŽ, ΡƒΡ‚ΠΎΡ‡Π½ΡΡŽΡ‰ΡƒΡŽ смысл ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SELECT.

ЛСксСмы id, name ΠΈ states Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Id ΠΈ name ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌΡ‹Π΅ поля, Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ states опрСдСляСт имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ производится Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ запрос ΠΏΡ€ΠΈΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ PostgreSQL Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ поля Id ΠΈ name ΠΊΠ°ΠΆΠ΄ΠΎΠΉ записи Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ states. Π’ листингС 3.13 ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния этого запроса.

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

МоТно Π»ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°, содСрТащиС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ?

Π‘ΠΊΠ°ΠΆΠ΅ΠΌ, Ρƒ мСня Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄

И я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ Π±Π»ΠΎΠΊ Π²Ρ€ΠΎΠ΄Π΅ этого

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, Π΄Π°ΠΆΠ΅ парсСр ΠΊΠΎΠ΄Π° SO Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ послСдниС 2 строки ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΊΠΎΠ΄Π°. МоТно Π»ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°, содСрТащиС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ?

Edit: Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ, ΠΌΠ½Π΅ это Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большиС участки ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ измСнСнная ΠΌΠ½ΠΎΠΉ функция ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ скомпилирован, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ внСсСны всС измСнСния.

6 ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ²

НСт, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ ΠΈ послСдним послСдним Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ распознано ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ (= Π½Π΅ обрабатываСтся компилятором). Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ многострочныС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ: Ссли распознан ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ (/ *), компилятор Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ распознан ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ послСдний Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ (* /). Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ это Π·Π½Π°Π΅Ρ‚Π΅, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ваш Π²Ρ‚ΠΎΡ€ΠΎΠΉ / * Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒΡΡ компилятором ΠΊΠ°ΠΊ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ символами ΠΈΠ»ΠΈ конкатСнациями Π² многострочном сСкторС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ

Π―Ρ€Π»Ρ‹ΠΊ для коммСнтирования строки: Command + Option + / (Π² Mac)

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Ρ‡Π΅Ρ€Π΅Π· Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹> Настройки> ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ клавиш (ΠŸΡ€Π°Π²ΠΊΠ° / Π’Ρ‹Π±ΠΎΡ€ / Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²).

Как заявил @Acroneos, Π²Ρ‹Ρ…ΠΎΠ΄Π° Π½Π΅Ρ‚. Π­Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° языков программирования. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ΡΡ лСксСрами. А лСксСры Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с контСкстно-свободной Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΎΠΉ. Ρ‚.Π΅. лСксы ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ рСгулярныС выраТСния.

Π’Ρ‹ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ C / C ++ ( #if 0 / #endif ). Π‘ΠΌ. Условная компиляция. Но это Π½Π΅ выглядит Β«Ρ‚Π°ΠΊ красиво».

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

ΠŸΠΎΠ΄Π±ΠΎΡ€ΠΊΠ° самых ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… горячих клавиш для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… IDE ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΊΠΎΠ΄Π°

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

Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΌΡƒ программисту Π½ΡƒΠΆΠ½Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹. Однако самих инструмСнтов ΠΌΠ°Π»ΠΎ β€” Π½ΡƒΠΆΠ½ΠΎ Π΅Ρ‰Ρ‘ Π²Π»Π°Π΄Π΅Ρ‚ΡŒ ΠΈΠΌΠΈ Π½Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ клавиш Ctrl+C Ctrl+V β€” Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΉ спутник ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² срСдах Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΅ΡΡ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… горячих клавиш, сущСствСнно ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ. ΠœΡ‹ собрали для вас ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΡƒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… горячих клавиш для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… популярных IDE, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΡ…Π²Π°ΡΡ‚Π°Ρ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ своими ΠΌΠ΅Π³Π°-скиллами Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

IntelliJ IDEA

IntelliJ IDEA β€” извСстная IDE ΠΎΡ‚ JetBrains для JVM-языков Π²Ρ€ΠΎΠ΄Π΅ Java, Scala ΠΈ Kotlin. Π£ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΠΎΠ²Π°Π½Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ инструмСнтами ΠΈ позволяСт Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. Π•ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ IDE ΠΎΡ‚ Ρ‚Π΅Ρ… ΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, PyCharm для Python, WebStorm для JavaScript ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ. Они Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ схоТи ΠΌΠ΅ΠΆΠ΄Ρƒ собой, поэтому Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΠΆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… горячих клавиш Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… IDE ΠΎΡ‚ JetBrains.

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

Eclipse

Если Π²Ρ‹ Π±Π»ΠΈΠ·ΠΊΠΈ с open-source сообщСством, Ρ‚ΠΎ Π²Ρ‹ навСрняка ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΎΠ± Eclipse. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ доступным для Linux, Windows ΠΈ OS X, Eclipse Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ являСтся open-source IDE для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java. БущСствуСт мноТСство Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΠΈ Π°Π΄Π΄ΠΎΠ½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ Eclipse ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ для Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° Π·Π°Π΄Π°Ρ‡ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Java языках программирования Π²Ρ€ΠΎΠ΄Π΅ Python.

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

Visual Studio 2017

Visual Studio β€” ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ IDE ΠΎΡ‚ Microsoft, которая Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ сопоставима с Eclipse. Доступная Π½Π° Windows ΠΈ Mac OS, Visual Studio прСдставлСна ΠΊΠ°ΠΊ Π² бСсплатном (Community), Ρ‚Π°ΠΊ ΠΈ Π² ΠΏΠ»Π°Ρ‚Π½ΠΎΠΌ (Professional ΠΈ Enterprise) Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ…. Visual Studio позволяСт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ ΠΈ прСдоставляСт свой собствСнный Π½Π°Π±ΠΎΡ€ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ.

sql ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄. 7144.PTVS 21 Find your project in Server Explorer for easy debugging. sql ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. sql ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄-7144.PTVS 21 Find your project in Server Explorer for easy debugging. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° sql ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 7144.PTVS 21 Find your project in Server Explorer for easy debugging. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ систСм, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, приходится ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° языкС SQL. ВсС Π·Π½Π°ΡŽΡ‚, Π½ΠΎ Π½Π΅ всС это ΠΎΡΠΎΠ·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ SQL ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΆΠ΅ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ дСсяток Π»Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ΄Π½Π° ΠΈΠ· самых ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Ρ… ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСнных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π² ΠΌΠΈΡ€Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ². Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π΅ стоят Π½Π° мСстС, Π½ΠΎ Π΄Π°ΠΆΠ΅ сСгодня, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ создатСли пост-рСляционных систСм Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ срСдства ΠΈ рСсурсы для прСдоставлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ SQL-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… срСдств поиска ΠΈ манипуляции Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим, ΠΊΠ°ΠΊ соврСмСнныС трСбования ΠΊ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°ΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π‘Π” ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ ΠΈ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ созданиС ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° SQL ΠΈ познакомимся с Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ малСньким Ρ‚Ρ€ΡŽΠΊΠΎΠΌ.

Доступный Π½Π° всСх ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Atom Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Β«Ρ…Π°ΠΊΠ°Π±Π΅Π»ΡŒΠ½Ρ‹ΠΌ тСкстовым Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ 21 Π²Π΅ΠΊΠ°Β». Atom написан с использованиСм Electron β€” Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° для создания кроссплатформСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для дСсктопа срСдствами JavaScript, HTML ΠΈ CSS β€” ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ мноТСство Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ.

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

Visual Studio Code

Visual Studio Code (Π½Π΅ ΠΏΡƒΡ‚Π°Ρ‚ΡŒ с Visual Studio) β€” ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π°, доступный Π½Π° Windows, Linux ΠΈ Mac OS X. VS Code являСтся Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΌ open-source Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ Π»ΡŽΠ±ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. Как ΠΈ Atom, VS Code построСн Π½Π° Electron, поэтому Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ прСимущСства ΠΈ нСдостатки.

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

Sublime Text

Sublime Text, написанный ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠΌ ΠΈΠ· Google с ΠΌΠ΅Ρ‡Ρ‚ΠΎΠΉ ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ΠΌ тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, являСтся вСсьма популярным Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠ΄Π°. Доступный Π½Π° всСх ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Sublime Text ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ рСдактирования ΠΊΠΎΠ΄Π° Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ возмоТности синтаксиса ΠΈ рСдактирования.

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

Π₯ΠΈΠ½Ρ‚ для программистов: Ссли Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ΡΡŒ Π½Π° сорСвнования Huawei Cup, Ρ‚ΠΎ бСсплатно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ доступ ΠΊ ΠΎΠ½Π»Π°ΠΉΠ½-школС для участников. МоТно ΠΏΡ€ΠΎΠΊΠ°Ρ‡Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ Π½Π°Π²Ρ‹ΠΊΠ°ΠΌ ΠΈ Π²Ρ‹ΠΈΠ³Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ·Ρ‹ Π² самом сорСвновании.

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ рСгистрации

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

О строковых функциях SQL ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкстом Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… MySQL

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

ЗдравствуйтС, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ Π±Π»ΠΎΠ³Π° webcodius.ru. БСгодня я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ языкС SQL, Π° Π² частности ΠΎ функциях для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тСкста. Для создания ΠΈ управлСния сайтом часто Π±Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π½Π°Π½ΠΈΠ΅ языка SQL. БистСмы управлСния ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ сайта Π±Π΅Π· написания запросов. Но хотя Π±Ρ‹ повСрхностноС знакомство с структурированным языком запросов ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… вашСго сайта.

ΠŸΠ΅Ρ€Π΅Π΄ΠΎ ΠΌΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ: ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ тСкста ΠΈΠ· тСкстовых ΠΏΠΎΠ»Π΅ΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ строковыС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π΅Ρ‰Π΅ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ связанноС с тСкстом. Π”Π΅Π»Π°Ρ‚ΡŒ всС это Ρ‡Π΅Ρ€Π΅Π· админскиС ΠΏΠ°Π½Π΅Π»ΠΈ сайтов ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ ΠΌΡƒΡ‚ΠΎΡ€Π½ΠΎ. Π“ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ всС эти дСйствия Π·Π° ΠΏΠ°Ρ€Ρƒ сСкунд.

Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² языкС sql

НачнСм ΠΏΠΎ порядку с самого простого. ΠŸΠ΅Ρ€Π²ΠΎΠΉ рассмотрим ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ASCII, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния ASCII-ΠΊΠΎΠ΄Π° тСкстовых символов:

integer ASCII(str string)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ†Π΅Π»ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” ASCII-ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ символа строки str. Π’ случаС Ссли строка str пустая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0 ΠΈ NULL Ссли строка str Π½Π΅ сущСствуСт.

SELECT ASCII (‘t’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 116
SELECT ASCII (‘test’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 116
SELECT ASCII (1);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 49

Π”Π°Π»Π΅Π΅ функция ORD, которая Ρ‚Π°ΠΊΠΆΠ΅ опрСдСляСт ASCII- ΠΊΠΎΠ΄ символов, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы:

integer ORD(str string)

SELECT ORD (‘test’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 116

Ѐункция CHAR, тСсно связанная с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ ASCII ΠΈ выполняСт ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ дСйствиС:

Ѐункция CHAR Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку символов ΠΏΠΎ ΠΈΡ… ASCII-ΠΊΠΎΠ΄Π°ΠΌ. Если срСди Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ встрСчаСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL, Ρ‚ΠΎ ΠΎΠ½ΠΎ пропускаСтся.

SELECT CHAR ( 116, ‘101’, 115, ‘116’ );
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘test’

SQL Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для объСдинСния строк

Одна ΠΈΠ· самых популярных ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Π΅Π΄ΡŒ Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ Π±Ρ‹Π²Π°Π΅Ρ‚ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ значСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… сайта. Π’ языкС SQL Π΅ΡΡ‚ΡŒ сразу нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ строк.

string CONCAT(str1 string, str2 string. )

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡƒΡ‚Π΅ΠΌ объСдинСния Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². МоТно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π΄Π²ΡƒΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² являСтся NULL, Ρ‚ΠΎ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ NULL. ЧисловыС значСния ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² строку.

SELECT CONCAT (‘Hello’, ‘ ‘, ‘world’, ‘!’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘Hello world!’
SELECT CONCAT (‘Hello’, NULL, ‘world’, ‘!’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: NULL
SELECT CONCAT (‘Число ΠΏΠΈ’, ‘=’, 3.14);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘Число ΠΏΠΈ=3.14’

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², строки ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π±Π΅Π· Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ слова Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° приходится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π». Если Π±Ρ‹ слов Π±Ρ‹Π»ΠΎ большС, Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

Для Ρ‚Π°ΠΊΠΈΡ… случаСв сущСствуСт функция CONCAT_WS:

string CONCAT_WS(separator string, str1 string, str2 string. )

Ѐункция ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ строки ΠΊΠ°ΠΊ ΠΈ функция CONCAT, Π½ΠΎ вставляСт ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ separator. Π’ случаС Ссли Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ separator являСтся NULL, Ρ‚ΠΎ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ NULL. АргумСнты строки Ρ€Π°Π²Π½Ρ‹Π΅ NULL ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ.

SELECT CONCAT_WS (‘ ‘, ‘Иванов’, ‘Иван’, ‘Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘Иванов Иван Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡’
SELECT CONCAT_WS (NULL, ‘Иванов’, ‘Иван’, ‘Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: NULL
SELECT CONCAT_WS (‘ ‘, ‘Иванов’, NULL, ‘Иван’, ‘Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: »Π˜Π²Π°Π½ΠΎΠ² Иван Π˜Π²Π°Π½ΠΎΠ²ΠΈΡ‡’

Π’ случаС объСдинСния большого количСства строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚Π΄Π΅Π»ΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ, функция CONCAT_WS Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ CONCAT.

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π»ΠΈΠ½ΠΈΡ‚ΡŒ строку Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ количСства символов Π·Π° счСт повторСния ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ символа. Π­Ρ‚ΠΎ Ρ‚ΠΎΠΆΠ΅ своСго Ρ€ΠΎΠ΄Π° объСдинСниС строк. Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ LPAD ΠΈ RPAD. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

string LPAD(str string, len integer, padstr string)
string RPAD(str string, len integer, padstr string)

Ѐункция LPAD Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку str Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ слСва строкой padstr Π΄ΠΎ Π΄Π»ΠΈΠ½Ρ‹ len. Ѐункция RPAD выполняСт Ρ‚ΠΎΠΆΠ΅ самоС, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ΄Π»ΠΈΠ½Π΅Π½ΠΈΠ΅ происходит с ΠΏΡ€Π°Π²ΠΎΠΉ стороны.

Π’ Π΄Π°Π½Π½Ρ‹Ρ… функциях Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ len, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ количСство Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… символов. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли Π΄Π»ΠΈΠ½Π° строки str Π±ΡƒΠ΄Π΅Ρ‚ большС Ρ‡Π΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ len, Ρ‚ΠΎ строка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π΅Π·Π°Π½Π°:

SELECT LPAD (‘test’, 3, ‘.’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: tes

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ строки Π² sql запросах

Для опрСдСлСния количСства символов Π² строкС Π² языкС SQL ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ функция LENGTH β€” Π΄Π»ΠΈΠ½Π° строки:

integer LENGTH(str string)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ†Π΅Π»ΠΎΠ΅ число Ρ€Π°Π²Π½ΠΎΠ΅ количСству символов Π² строкС str.

SELECT LENGTH (‘test’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 4

Π’ случаС использования ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ функция LENGTH Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. НапримСр Π² случаС Ссли Π·Π°Π΄Π°Π½Π° ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° unicode, Ρ‚ΠΎ запрос:

SELECT LENGTH (‘тСст’);

Π²Π΅Ρ€Π½Π΅Ρ‚ 8. Π§Ρ‚ΠΎ, Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Π² Π΄Π²Π° Ρ€Π°Π·Π° большС Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ количСства символов. Π’ этом случаС Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ CHAR_LENGTH:

integer CHAR_LENGTH(str string)

Ѐункция Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ строки str ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT CHAR_LENGTH (‘тСст’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 4

Поиск подстроки Π² строкС срСдствами sql

Для вычислСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ подстроки Π² строкС Π² языкС sql сущСствуСт нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠŸΠ΅Ρ€Π²Π°Ρ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ рассмотрим, функция POSITION:

integer POSITION(substr string IN str string)

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки substr Π² строкС str ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0 Ссли подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°. Ѐункция POSITION ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ символами.

SELECT POSITION (‘cd’ IN ‘abcdcde’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 3
SELECT POSITION (‘xy’ IN ‘abcdcde’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 0

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ функция LOCATE позволяСт Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ поиск подстроки с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ:

integer LOCATE(substr string, str string, pos integer)

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки substr Π² строкС str, начиная с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ pos. Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ pos Π½Π΅ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ поиск осущСствляСтся с Π½Π°Ρ‡Π°Π»Π° строки. Если подстрока substr Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT LOCATE (‘cd’, ‘abcdcdde’, 5);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 5
SELECT LOCATE (‘cd’, ‘abcdcdde’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 3

Аналогом Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ POSITION ΠΈ LOCATE являСтся функция INSTR:

integer INSTR(str string, substr string)

Π’Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΡˆΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки substr Π² строкС str. ЕдинствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ POSITION ΠΈ LOCATE Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ помСняны мСстами.

Π”Π°Π»Π΅Π΅ рассмотрим Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ подстроку.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌΠΈ рассмотрим сразу Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ LEFT ΠΈ RIGHT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈ ΠΏΠΎ своСму Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ:

string LEFT(str string, len integer)
string RIGHT(str string, len integer)

Ѐункция LEFT Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ len ΠΏΠ΅Ρ€Π²Ρ‹Ρ… символов ΠΈΠ· строки str, Π° функция RIGHT ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅ послСдних. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT LEFT (‘Москва’, 3);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Мос
SELECT RIGHT (‘Москва’, 3);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ΠΊΠ²Π°

Π”Π°Π»Π΅Π΅ рассмотрим ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠΎ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SUBSTRING ΠΈ MID:

string SUBSTRING(str string, pos integer, len integer)
string MID(str string, pos integer, len integer)

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ подстроку строки str длиною len символов с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ pos. Π’ случаС Ссли ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ len Π½Π΅ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ возвращаСтся вся подстрока начиная с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ pos.

SELECT SUBSTRING (‘Π³. Москва β€” столица России’, 4, 6);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Москва
SELECT SUBSTRING (‘Π³. Москва β€” столица России’, 4);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Москва β€” столица России

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ MID Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅.

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Π°Ρ функция SUBSTRING_INDEX:

string SUBSTRING_INDEX(str string, delim string, count integer)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ подстроку строки str, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ ΠΏΡƒΡ‚Π΅ΠΌ удалСния символов, ΠΈΠ΄ΡƒΡ‰ΠΈΡ… послС раздСлитСля delim, находящимся Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ count. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ count ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Если count ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ отсчСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ раздСлитСля Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ слСва ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒΡΡ Π±ΡƒΠ΄ΡƒΡ‚ символы находящиСся справа ΠΎΡ‚ раздСлитСля. Если count ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ отсчСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ раздСлитСля вСдСтся справа ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ символы находящиСся слСва ΠΎΡ‚ раздСлитСля. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, описаниС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ слишком Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌ, Π½ΠΎ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… станСт понятнСй.

SELECT SUBSTRING_INDEX (‘www.mysql.ru’, ‘.’, 1);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: www

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ функция Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ вхоТдСния символа Ρ‚ΠΎΡ‡ΠΊΠΈ Π² строкС Β«www.mysql.ruΒ» ΠΈ удаляСт всС символы, ΠΈΠ΄ΡƒΡ‰ΠΈΠ΅ послС Π½Π΅Π΅, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сам Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ.

SELECT SUBSTRING_INDEX (‘www.mysql.ru’, ‘.’, 2);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: www.mysql

Π—Π΄Π΅ΡΡŒ функция ΠΈΡ‰Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, удаляСт всС символы справа ΠΎΡ‚ Π½Π΅Π΅ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΡƒΡŽΡΡ подстроку. И Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° count:

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ функция SUBSTRING_INDEX ΠΈΡ‰Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, отсчитывая ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ справа, удаляСт символы слСва ΠΎΡ‚ Π½Π΅Π΅ ΠΈ Π²Ρ‹Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ подстроку.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈΠ· строки

Для удалСния Π»ΠΈΡˆΠ½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° строки Π² языкС SQL Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

string LTRIM(str string)

УдаляСт с Π½Π°Ρ‡Π°Π»Π° строки str ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

string RTRIM(str string)

Π’Π°ΠΊΠΆΠ΅ удаляСт ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ· строки str, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΊΠΎΠ½Ρ†Π°. ОбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT LTRIM (‘ тСкст ‘);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘тСкст ‘
SELECT RTRIM (‘ тСкст ‘);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘ тСкст’

И Ρ‚Ρ€Π΅Ρ‚ΡŒΡ функция TRIM позволяСт сразу ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΈΠ· ΠΊΠΎΠ½Ρ†Π° строки:

string TRIM([[BOTH | LEADING | TRAILING] [remstr] string FROM] str string)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ str ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅. Π’ случаС Ссли Π·Π°Π΄Π°Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ str, Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку str ΡƒΠ΄Π°Π»ΠΈΠ² ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° строки ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

SELECT TRIM (‘ тСкст ‘);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘тСкст’

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π° ΠΌΠ΅Ρ‚Ρ€Π° remstr ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ символы ΠΈΠ»ΠΈ подстроки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒΡΡ ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° строки. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² BOTH, LEADING, TRAILING ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒΡΡ символы:

SELECT TRIM (BOTH ‘Π°’ FROM ‘тСкст’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘тСкст’
SELECT TRIM (LEADING ‘Π°’ FROM ‘тСкстааа’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘тСкстааа’
SELECT TRIM (TRAILING ‘Π°’ FROM ‘ааатСкст’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘ааатСкст’

Ѐункция SPACE позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ строку ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ количСства ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ²:

string SPACE(n integer)

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, которая состоит ΠΈΠ· n ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ².

Ѐункция REPLACE Π½ΡƒΠΆΠ½Π° для Π·Π°ΠΌΠ΅Π½Ρ‹ Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… символов Π² строкС:

string REPLACE(str string, from_str string, to_str string)

Ѐункция замСняСт Π² строкС str всС подстроки from_str Π½Π° to_str ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚Π½Ρ‹Π΅ символы.

SELECT REPLACE ( ‘Π·Π°ΠΌΠ΅Π½Π° подстроки’, ‘подстроки’, ‘тСкста’ )
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘Π·Π°ΠΌΠ΅Π½Π° тСкста’

string REPEAT(str string, count integer)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, которая состоит ΠΈΠ· count ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ строки str. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT REPEAT (‘w’, 3);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘www’

Ѐункция REVERSE ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ строку:

string REVERSE(str string)

ΠŸΠ΅Ρ€Π΅ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ Π² строкС str всС символы с послСднСго Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT REVERSE (‘тСкст’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘тскСт’

Ѐункция INSERT для вставки подстроки Π² строку:

string INSERT(str string, pos integer, len integer, newstr string)

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ вставки Π² строку str подстроки newstr с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ pos. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ len ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ сколько символов Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ ΠΈΠ· строки str, начиная с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ pos. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELECT INSERT (‘text’, 2, 5, ‘MySQL’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘tMySQL’
‘SELECT INSERT (‘text’, 2, 0, ‘MySQL’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘tMySQLext’
SELECT INSERT (‘вставка тСкста’, 2, 7, ‘MySQL’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘SELECT INSERT (‘вставка тСкста’, 2, 7, ‘MySQL’);’

Если Π²Π΄Ρ€ΡƒΠ³ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π·Π°Π΅ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² тСкстС всС Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ Π½Π° прописныС, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

string LCASE(str string) ΠΈ string LOWER(str string)

ОбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ Π² строкС str Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ Π½Π° прописныС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. И Ρ‚Π° ΠΈ другая ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.

SELCET LOWER (‘ΠΠ‘Π’Π“Π”Π΅Π–Π—ΠΈΠšΠ›’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:’Π°Π±Π²Π³Π΄Π΅ΠΆΠ·ΠΈΠΊΠ»’

Если ΠΆΠ΅ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ прописныС Π±ΡƒΠΊΠ²Ρ‹ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌΠΈ, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π΄Π²ΡƒΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉΠΉ:

string UCASE(str string) ΠΈ string UPPER (str string)

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ строку str, Π·Π°ΠΌΠ΅Π½ΠΈΠ² всС прописныС символы Π½Π° Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ символы.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

SELECT UPPER (‘АбвгдСТз’);
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ‘АБВГДЕЖЗ’

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

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

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

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