Crie substrings de strings no PostgreSQL

Crie Substrings De Strings No Postgresql



Há casos em que você pode querer extrair uma determinada seção (substring) de uma string. Pode ser que você esteja interessado apenas na seção determinada e queira deixar de fora a outra seção da string na sua saída. Imagine um caso em que você tem um nome completo como “fname lname” como uma string e deseja apenas extrair o “fname” em sua saída. Para isso, você deve usar a função de substring do PostgreSQL. Preparamos um guia detalhado a seguir, incluindo exemplos para ajudá-lo a entender como criar substrings de strings no PostgreSQL.

Exemplos de como criar substrings de strings no PostgreSQL

A primeira coisa que devemos verificar é a sintaxe.

SUBSTRING(string/nome_coluna, posição_inicial, comprimento)

Na sintaxe fornecida, você pode especificar a string que deseja criar uma substring ou especificar a coluna em sua tabela. Em seguida, você deve especificar a posição na string de onde deseja que a substring comece. Por último, especifique o comprimento da substring ou a posição final da string. Vejamos alguns exemplos para vê-lo em ação.







Exemplo 1: especifique o comprimento da substring

Quando você tiver sua string de destino, poderá definir o comprimento que a substring deve ter. Por exemplo, se você tem sua string como “Linuxhint” e deseja criar sua substring como “Linux”, execute o seguinte comando:



SELECT SUBSTRING('Linuxhint' FROM 1 FOR 5) AS nome de usuário;

Estamos usando a palavra-chave FROM para especificar nossa posição inicial e a palavra-chave FOR para especificar o comprimento da substring. O “nome de usuário” é o nome que damos à nossa saída.



Obtemos a seguinte saída executando o comando. Observe como obtivemos nossa substring desejada como saída:





Suponha que você queira que a substring seja criada a partir de uma posição inicial diferente na sua string. Por exemplo, se você quiser “dica” como substring, basta alterar a posição inicial e o comprimento.



Para isso, executamos nosso comando da seguinte forma:

Exemplo 2: especifique a posição da substring

Às vezes, você pode ter sua string, mas não sabe o comprimento exato da substring. No entanto, você pode especificar em que posição iniciar a criação da substring. A saída exibe todas as seções de string da posição especificada até o final.

Para este exemplo, temos nossa string como “Hello Linuxhint”. Para obter “Linuxhint” como nossa substring sem especificar sua posição, precisamos apenas especificar em que posição queremos criar a substring. Para este caso, partimos da posição 6. Assim, nosso comando é o seguinte:

SELECT SUBSTRING('Hello Linuxhint' FROM 6) AS nome de usuário;

Exemplo 3: especifique as posições inicial e final

Dada uma string, você pode criar uma substring especificando as posições inicial e final. Dessa forma, mesmo que o comprimento da string seja maior que a substring desejada, ela só será criada com base nas posições inicial e final especificadas.

Usando “Hello Linuxhint” como nossa string, podemos criar nossa substring como “Hello Linux” e omitir as outras seções especificando as posições inicial e final da seguinte forma:

SELECT SUBSTRING('Hello Linuxhint', 1, 11) AS nome de usuário;

Nenhuma palavra-chave é necessária para este caso, apenas as posições inicial e final.

Exemplo 4: Trabalhando com uma tabela PostgreSQL

Também é possível criar uma substring com base nos valores selecionados em uma determinada coluna da sua tabela. Para nosso exemplo, usamos a tabela “clientes”.

Digamos que temos como alvo a coluna “cust_email” e queremos criar uma substring especificando o comprimento. Teríamos nosso comando da seguinte forma:

Observe como, para cada valor na coluna, a saída é uma substring de comprimento 3 da string original.

Vamos atualizar a tabela com um nome completo em nossa coluna de nome. Nossa nova tabela fica assim:

Agora, se quisermos extrair apenas a primeira seção da coluna de nome, que é o primeiro nome de cada um de nossos clientes, criar uma substring para a coluna de nome resolverá o problema. Aqui, devemos especificar a posição inicial. Para o comprimento da substring, definimos como a posição em cada string onde há um espaço.

O espaço marca a separação entre o nome e o sobrenome. Assim, nosso comando verifica a posição onde começa o espaço na string. Em seguida, selecione a substring da primeira posição até onde ela encontra o espaço.

Executamos nosso comando da seguinte maneira:

SELECT order_id, SUBSTRING(nome FROM 1 FOR POSITION( ‘ ‘ IN nome) – 1) AS client_fname FROM clientes;

Selecionamos “order_id” e a substring, e nossa saída aparece da seguinte forma:

É assim que você pode criar substrings a partir de strings em uma tabela PostgreSQL.

Conclusão

PostgreSQL oferece a função substring que permite aos usuários criar uma substring usando critérios diferentes. Dependendo do seu objetivo, você pode especificar o comprimento da substring ou as posições inicial e final. Os exemplos abordados nesta postagem ajudarão você a se sentir confortável com a criação de substrings no PostgreSQL. Continue praticando para compreender o conceito.