Pplware

Vamos dar uns toques de SQL? X

Por Pedro Gaspar para o PPLWARE

Ao longo de 10 semana temos apresentado alguns conceitos e funções sobre a linguagem SQL (ver artigos relacionados). A discussão do tema por parte dos nossos leitores tem sido fantástica e a partilha de conhecimento e experiência de cada um tem contribuído para um melhor uso de determinadas funções.

Esta semana vamos aprofundar um pouco mais a manipulação de strings em SQL.

Para apresentar os exemplos vamos utilizar a nossa habitual tabela tbl_pplware com os seguintes dados:

Por vezes é-nos útil manipular as strigs que queremos obter, seja separar os espaços, remover um determinado caracter que nos seja inútil, ou outra situação qualquer. A linguagem SQL tem algumas funções interessantes para manipulação de strings.

Função SUBSTRING_INDEX

Neste exemplo vamos utilizar a função SUBSTRING_INDEX Esta função permite-nos dividir uma string em varias e selecionar apenas a parte que nos interessa.

Como usar?

SELECT SUBSTRING_INDEX(‘www.pplware.com’, ‘.’, -2)

Resultado

Objectivo: Seleccionar o primeiro e ultimo nome de todas as pessoas

Query

SELECT SUBSTRING_INDEX( nome, ' ', 1 ) AS pnome, SUBSTRING_INDEX( nome, ' ', -1 ) AS unome FROM `tbl_pplware`

Resultado:

Como podem verificar o Vítor tem o mesmo resultado tanto no pnome como no unome, isto deve-se ao facto de ele não ter ultimo nome, ou seja, o delimitador que neste caso é ‘ ’ (um espaço) não existe.

Função REPLACE

Imaginemos que necessitamos de substituir um carácter ou uma substring dentro de uma string, nesse caso vamos utilizar a função REPLACE

Sintaxe

SELECT REPLACE(‘string princial’, ‘string a procurar’, ‘string que ira substituir’)

Objectivo: Remover o espaço entre no nome das pessoas

Query

SELECT REPLACE( nome, ' ', '' )
FROM tbl_pplware

Resultado

Função LOWER e UPPER

Por vezes necessitamos de obter os nossos resultados em letra pequena ou letra grande, nesse caso utilizamos as funções LOWER para converter a nossa string toda para letra pequena, ou a função UPPER para convertermos a string toda para letra grande

Objectivo: Converter o nome das pessoas todo para letra grande

Query:

SELECT UPPER( nome )
FROM `tbl_pplware`

Resultado

Função CONCAT

E se necessitar-mos de unir strings ? Nesse caso utilizamos a função CONCAT.

Sintaxe

SELECT CONCAT(string1’, ‘string2, ‘string3)

Objectivo: Criar um email para as pessoas, sendo que no nome não poderão existir espaços e os mesmos serão substituídos por pontos, o nome será todo escrito em letra pequena e no fim sera adicionado a string @pplware.com

Query

SELECT CONCAT( REPLACE( LOWER( nome ) , ' ', '.' ) , '@pplware.com' ) AS email
FROM tbl_pplware

Resultado:

Esta semana ficamos por aqui. Esperamos que tenham gostado do tema do artigo de hoje e no caso de conhecerem mais funções não se esqueçam de partilhar connosco. Bom fim de semana!

Exit mobile version