PostgreSQL Função SUBSTRING() com exemplo de Regex

O que é a PostgreSQL Substring?

As PostgreSQL A função substring ajuda você a extrairtrace retorna parte de uma string. Em vez de retornar a string inteira, retorna apenas uma parte dela.

Sintaxe

As PostgreSQL A função substring adota a seguinte sintaxe:

substring( string [from starting_position] [for length] )

Parâmetros Técnicos

Nome Descrição
corda A string de origem cujo tipo de dados é varchar, char, string, etc.
posicão inicial É um parâmetro opcional. Indica o local onde o extracA execução da string começará. Se você omitir este parâmetro, o extracA ação começará na posição 1, que é o primeiro caractere da string.
comprimento É um parâmetro opcional. Indica o número de caracteres a serem exibidos.tracextraído da string. Se você omitir este parâmetro, a função irá...tract da posição inicial até o final da string.

Exemplos

Neste exemplo, queremos extracos primeiros 4 caracteres da palavra Guru99:

SELECT substring('Guru99' for 4);

O comando retornará o seguinte:

PostgreSQL Substring

Não especificamos a posição inicial, então o extracção da substring começa na posição 1. 4 caracteres foram extracted para retornar o acima.

O exemplo a seguir mostra como especificar a posição inicial:

SELECT substring('Guru99' from 1 for 4);

O comando retornará o seguinte:

PostgreSQL Substring

Especificamos que o extracA substring deve começar na posição 1 e 4 caracteres devem ser definidos.tracted.

Vamos extract 99 da string Guru99:

SELECT substring('Guru99' from 5);

O comando retornará o seguinte:

PostgreSQL Substring

Especificamos a posição inicial como 5. Como o número de caracteres a serem extracO termo "ted" não foi especificado, o extracA ação foi até o final da string.

Aqui está outro exemplo:

SELECT substring('Guru99' from 5 for 2);

O comando retornará o seguinte:

PostgreSQL Substring

Começamos extracção na posição 5, e 2 caracteres foram extracted.

Considere a tabela do livro fornecida abaixo:

PostgreSQL Substring

Queremos ter uma ideia aproximada do nome de cada livro. No entanto, podemos extracapenas os primeiros 15 caracteres da coluna de nome da tabela:

SELECT
   id,
   SUBSTRING(name, 1, 15 ) AS name_initial
FROM
   Book
ORDER BY
   id;

O comando retornará o seguinte:

PostgreSQL Substring

Agora temos uma ideia aproximada sobre o nome de cada livro.

Correspondendo Substrings com Expressão Regular SQL

In PostgreSQL, podemos extracuma substring que corresponde a uma expressão regular POSIX especificada. Nesse caso, a função substring é usada com a seguinte sintaxe:

SUBSTRING(string FROM matching_pattern)

or

SUBSTRING(string, matching_pattern);

Aqui está uma explicação dos parâmetros acima:

A string é a string de origem cujo tipo de dados é varchar, char, string, etc.

Omatch_pattern é o padrão a ser usado para pesquisar na string.

Exemplos

SELECT
   SUBSTRING (
      'Your age is 22',
      '([0-9]{1,2})'
   ) as age;

O comando retornará o seguinte:

Correspondendo Substrings com Expressão Regular SQL

Nossa string de entrada é "your age is 22". No padrão, estamos procurando por um padrão numérico em nossa string. Quando esse padrão for encontrado, a função substring deve extrair apenas o valor numérico correspondente.tracdois caracteres.

Como combinar substrings usando pgAdmin

Agora vamos ver como as ações são executadas usando o pgAdmin.

As consultas acima, onde não precisamos de um banco de dados, podem ser executadas diretamente na janela do editor de consultas. Basta fazer o seguinte:

Passo 1) Acesse sua conta.
Faça login em sua conta pgAdmin.

Passo 2) No pgAdmin,
Clique no ícone da Ferramenta de consulta.

Correspondência de substrings usando pgAdmin

A janela do editor de consultas será aberta.

Passo 3) Digite consulta.
Digite a seguinte consulta na janela do editor.

SELECT substring('Guru99' for 4);

Passo 4) Executar consulta
Clique no ícone Executar para executar a consulta.

Correspondência de substrings usando pgAdmin

Passo 5) A execução da consulta está concluída.
Deve retornar o seguinte:

Correspondência de substrings usando pgAdmin

2 exemplo:

SELECT substring('Guru99' from 1 for 4);

Deve retornar o seguinte:

Correspondência de substrings usando pgAdmin

Aqui está o próximo exemplo:

SELECT substring('Guru99' from 5);

Deve retornar o seguinte:

Correspondência de substrings usando pgAdmin

3 exemplo:

SELECT substring('Guru99' from 5 for 2);

Deve retornar o seguinte:

Correspondência de substrings usando pgAdmin

Agora, vamos executar o exemplo usando a tabela Book do banco de dados Demo:

Passo 1) Faça login em sua conta pgAdmin.

Passo 2)

  1. Na barra de navegação à esquerda, clique em Bancos de dados.
  2. Clique em Demonstração.

Correspondência de substrings usando pgAdmin

Passo 3) Digite a consulta no editor de consultas:

SELECT
   id,
   SUBSTRING(name, 1, 15 ) AS name_initial
FROM
   Book
ORDER BY
   id;

Passo 4) Clique no botão Executar.

Correspondência de substrings usando pgAdmin

Deve retornar o seguinte:

PostgreSQL Substring

Agora temos uma ideia básica do nome de cada livro.

Correspondendo Substrings com Expressão Regular SQL

Para fazer o mesmo no pgAdmin, faça o seguinte:

Passo 1) Faça login em sua conta pgAdmin.

Passo 2) Clique no ícone da Ferramenta de consulta.

Correspondendo Substrings com Expressão Regular SQL

A janela do editor de consultas será aberta.

Passo 3) Digite a seguinte consulta na janela do editor.

SELECT
   SUBSTRING (
      'Your age is 22',
      '([0-9]{1,2})'
   ) as age;

Passo 4) Clique no ícone Executar para executar a consulta.

Correspondendo Substrings com Expressão Regular SQL

Deve retornar o seguinte:

Correspondendo Substrings com Expressão Regular SQL

Resumo

  • As PostgreSQL A função substring ajuda em exemplos.tracting e retornando apenas uma parte de uma string.
  • O primeiro caractere da string está na posição 1.
  • Se o número de caracteres a serem extracSe o valor da string não for especificado, a função irá...tract caracteres da posição inicial especificada até o final da string.
  • Se o número de caracteres a serem extracSe ted for especificado, apenas esse número de caracteres será exibido.tracted.

Baixe o banco de dados usado neste tutorial

Resuma esta postagem com: