0Pricing
SQL Academy · Урок

UPPER, LOWER, SUBSTRING, REPLACE

Нормализуйте регистр, извлекайте подстроки по позиции и длине и заменяйте шаблоны внутри текста

«UPPER, LOWER, SUBSTRING, REPLACE» — бесплатный урок SQL Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SQL Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SQL Academy содержит 4 уроков всего.

Преобразование регистра

Две основные функции:

SELECT UPPER('hello');     -- HELLO
SELECT LOWER('Hello');     -- hello
SELECT INITCAP('hello world');  -- 'Hello World' (PostgreSQL extension)

Зачем нормализовать регистр

Сравнение адресов электронной почты должно быть нечувствительным к регистру, но регистр следует сохранять при хранении. Нормализуйте значения во время сравнения:

SELECT * FROM users WHERE LOWER(email) = LOWER('USER@Example.COM');

-- Or use a functional index:
CREATE INDEX users_email_lower_idx ON users (LOWER(email));

Citext: текстовый тип без учёта регистра

Для столбца, значения которого всегда должны сравниваться без учёта регистра, используйте расширение citext:

CREATE EXTENSION IF NOT EXISTS citext;
CREATE TABLE users (email CITEXT UNIQUE);

SUBSTRING

Извлекайте подстроку, указывая начальную позицию и длину:

SELECT SUBSTRING('PostgreSQL', 1, 4);    -- 'Post'
SELECT SUBSTRING('PostgreSQL' FROM 5);    -- 'greSQL'

-- 1-based indexing, not 0-based

SUBSTRING с регулярным выражением

PostgreSQL также принимает шаблон регулярного выражения:

SELECT SUBSTRING('user@example.com' FROM '@(.+)$');
-- 'example.com'

LEFT и RIGHT

Сокращённые варианты для получения «первых N» и «последних N» символов:

SELECT LEFT('PostgreSQL', 4);     -- 'Post'
SELECT RIGHT('PostgreSQL', 3);    -- 'SQL'

REPLACE

Заменяйте каждое вхождение подстроки:

SELECT REPLACE('hello world', 'world', 'SQL');   -- 'hello SQL'
SELECT REPLACE(phone, '-', '');                  -- strip dashes

REGEXP_REPLACE

Заменяйте значения по шаблону:

SELECT REGEXP_REPLACE('Order #1234', '[^0-9]', '', 'g');  -- '1234'
SELECT REGEXP_REPLACE(text, '\s+', ' ', 'g');             -- collapse whitespace

LENGTH и CHAR_LENGTH

Длина в символах, а не в байтах (с учётом Unicode):

SELECT LENGTH('héllo');           -- 5
SELECT CHAR_LENGTH('héllo');      -- 5
SELECT OCTET_LENGTH('héllo');     -- 6  (UTF-8 byte length)

POSITION и STRPOS

Находите индекс подстроки:

SELECT POSITION('SQL' IN 'PostgreSQL');    -- 8
SELECT STRPOS('PostgreSQL', 'SQL');        -- 8

REVERSE

Разворачивайте строку:

SELECT REVERSE('hello');     -- 'olleh'

Повторение

Преобразование регистра, работа с подстроками и замена покрывают большинство задач обработки текста.

  • LOWER и UPPER для нормализации
  • SUBSTRING для извлечения фрагментов
  • REPLACE для фиксированных замен, REGEXP_REPLACE для замены по шаблонам

Быстрая проверка

Что возвращает SUBSTRING('database', 5, 4)?

Часто задаваемые вопросы

Урок «UPPER, LOWER, SUBSTRING, REPLACE» бесплатный?

Да — полный текст урока «UPPER, LOWER, SUBSTRING, REPLACE» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SQL Academy, подпишись на CoddyKit PRO. Курс SQL Academy содержит 4 уроков всего.

Чему я научусь в уроке «UPPER, LOWER, SUBSTRING, REPLACE»?

Нормализуйте регистр, извлекайте подстроки по позиции и длине и заменяйте шаблоны внутри текста Ты практикуешь SQL Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать SQL Academy?

Предыдущий опыт не требуется. SQL Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «UPPER, LOWER, SUBSTRING, REPLACE»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке SQL Academy?

Да. Каждый урок SQL Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Конкатенация: || и CONCAT
  2. UPPER, LOWER, SUBSTRING, REPLACE
  3. TRIM, LPAD, RPAD
  4. Введение в полнотекстовый поиск (tsvector, to_tsquery)
← Назад к SQL Academy