Примеры создания подстрок строк в PostgreSQL
Первое, что мы должны проверить, это синтаксис.
SUBSTRING(строка/имя_столбца, начальная_позиция, длина)В данном синтаксисе вы можете указать строку, подстроку которой хотите создать, или указать столбец в таблице. Далее вы должны указать позицию в строке, с которой вы хотите, чтобы подстрока начиналась. Наконец, укажите длину подстроки или конечную позицию строки. Давайте приведем несколько примеров, чтобы увидеть это в действии.
Пример 1. Укажите длину подстроки
Когда у вас есть целевая строка, вы можете установить длину подстроки. Например, если у вас есть строка «Linuxhint», и вы хотите создать подстроку как «Linux», выполните следующую команду:
ВЫБЕРИТЕ ПОДСТРОКУ («Linuxhint» FROM 1 FOR 5) КАК имя пользователя;
Мы используем ключевое слово FROM, чтобы указать начальную позицию, и ключевое слово FOR, чтобы указать длину подстроки. «Имя пользователя» — это имя, которое мы даем нашему выводу.
Выполнив команду, мы получаем следующий вывод. Обратите внимание, как на выходе мы получили желаемую подстроку:
Предположим, вы хотите, чтобы подстрока была создана из другой начальной позиции вашей строки. Например, если вы хотите, чтобы в качестве подстроки использовалась «подсказка», просто измените начальную позицию и длину.
Для этого мы выполняем нашу команду следующим образом:
Пример 2. Укажите позицию подстроки
Иногда у вас может быть строка, но вы не знаете точную длину подстроки. Однако вы можете указать, с какой позиции начинать создание подстроки. В выводе отображаются все разделы строки от указанной позиции до конца.
В этом примере у нас есть строка «Hello Linuxhint». Чтобы получить «Linuxhint» в качестве нашей подстроки без указания ее позиции, нам нужно всего лишь указать, в какой позиции мы хотим создать подстроку. В данном случае мы начинаем С позиции 6. Таким образом, наша команда выглядит следующим образом:
ВЫБЕРИТЕ ПОДСТРОКУ («Hello Linuxhint» FROM 6) В качестве имени пользователя;
Пример 3. Укажите начальную и конечную позиции
Учитывая строку, вы можете создать подстроку, указав начальную и конечную позиции. Таким образом, даже если длина строки длиннее желаемой подстроки, она будет создана только на основе указанных начальной и конечной позиций.
Используя «Hello Linuxhint» в качестве строки, мы можем создать подстроку «Hello Linux» и опустить другие разделы, указав начальную и конечную позиции следующим образом:
SELECT SUBSTRING('Hello Linuxhint', 1, 11) КАК имя пользователя;В этом случае ключевое слово не требуется, только начальная и конечная позиции.
Пример 4. Работа с таблицей PostgreSQL
Также возможно создать подстроку на основе значений, выбранных вами из определенного столбца таблицы. В нашем примере мы используем таблицу «клиенты».
Допустим, мы нацелены на столбец «cust_email» и хотим создать подстроку, указав длину. У нас была бы следующая команда:
Обратите внимание, что для каждого значения в столбце выходные данные представляют собой подстроку длиной 3 исходной строки.
Давайте обновим таблицу, указав полное имя в столбце имени. Наша новая таблица выглядит следующим образом:
Теперь, если мы хотим извлечь только первый раздел из столбца имени, который является именем каждого из наших клиентов, создание подстроки для столбца имени поможет. Здесь мы должны указать начальную позицию. В качестве длины подстроки мы устанавливаем позицию в каждой строке, где есть пробел.
Пробел отмечает разделение между именем и фамилией. Таким образом, наша команда проверяет позицию начала пробела в строке. Затем выберите подстроку от первой позиции до места, где она встречается с пробелом.
Мы запускаем нашу команду следующим образом:
SELECT order_id, SUBSTRING(имя FROM 1 FOR POSITION( ‘ ‘ IN name) – 1) AS client_fname FROM клиентов;Мы выбираем «order_id» и подстроку, и наш вывод выглядит следующим образом:
Вот как вы можете создавать подстроки из строк в таблице PostgreSQL.
Заключение
PostgreSQL предлагает функцию подстроки, которая позволяет пользователям создавать подстроку по различным критериям. В зависимости от вашей цели вы можете указать длину подстроки или начальную и конечную позиции. Примеры, рассмотренные в этом посте, помогут вам освоиться с созданием подстрок в PostgreSQL. Продолжайте практиковаться, чтобы понять концепцию.