Database
 sql >> база данни >  >> RDS >> Database

Как да отрежете низове в SQL

Проблем:

Искате да премахнете конкретни знаци от началото и края на низ.

Пример:

Нашата база данни има таблица с име post с данни в две колони:id и title .

id заглавие
1 „Новини за кучета“
3 „Евровизия 2019“
4 „Нов политически климат“

Нека отрежем заглавието на всяка публикация, за да премахнем ненужното място в началото и в края.

Решение:

Ще използваме TRIM функция. Ето заявката, която бихте написали:

SELECT TRIM( BOTH ' ' FROM title ) as new_title
FROM post;

Като алтернатива можете да използвате по-кратката версия без BOTH ключова дума; по подразбиране TRIM ще третира това като ДВЕТЕ операция.

SELECT TRIM(' ' FROM title ) as new_title
FROM post;

Ето резултата и от двете заявки:

ново_заглавие
„Новини за кучета“
„Евровизия 2019“
„Нов политически климат“

Дискусия:

Използвайте TRIM функция, ако искате да отрежете низ в таблица. Тази функция ви позволява да премахнете конкретен знак от началото или края на низ, или от двата края. Тази функция приема следните аргументи:

  • Ключова дума, указваща краищата, от които да се подрязват (по избор — BOTH по подразбиране).
  • Символът, който искате да отрежете от низа.
  • FROM ключова дума, последвано от името на колоната на низа, която трябва да бъде изрязана.

В нашия пример това изглежда така:

TRIM( BOTH ' ' FROM title )

Както бе споменато по-горе, TRIM може да приеме други ключови думи като свой първи аргумент. В допълнение към изрязването от двата края, той ни позволява да премахнем символ само от края на низ или само от началото:

  • TRAILING (махнете от края)
  • LEADING (премахване от началото)

Примерът по-долу премахва пространството в края на всяко заглавие (но може също да се използва за отрязване на пространството в началото, ако използвате LEADING ключова дума вместо това):

SELECT TRIM( TRAILING ' ' FROM title ) as new_title
FROM post;

Заявката връща title колона без интервал в края. Забележете, че интервалите в началото са оставени недокоснати.

ново_заглавие
„Новини за кучета“
„Евровизия 2019“
„Нов политически климат“

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Влизане с външни услуги

  2. Основи на табличните изрази, част 13 – Вградени функции с таблично стойности, продължение

  3. Проста параметризация и тривиални планове — част 3

  4. SQL Право присъединяване

  5. Как да конкатенираме низове в SQL