Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A maneira mais fácil de adicionar vários espaços a uma string no MySQL – SPACE()


Ocasionalmente, ao trabalhar com bancos de dados MySQL, você pode precisar adicionar vários caracteres de espaço a uma string.

Talvez você precise preencher uma string adicionando espaços à esquerda ou à direita. Ou talvez você precise substituir um único espaço dentro da string por muitos espaços. De qualquer forma, o MySQL tem o SPACE() função para ajudá-lo.

O SPACE() A função é uma maneira fácil de retornar quantos caracteres de espaço forem necessários.


Sintaxe


Veja como fica a sintaxe:
SPACE(N)

Onde N é o número de espaços que você precisa retornar. Então, se você precisar de 10 espaços, use SPACE(10) .

Exemplo


Aqui está um exemplo rápido para demonstrar como SPACE() funciona:
SELECT CONCAT('Cherry', SPACE(8), 'Blossom') AS Result;

Resultado:
+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

Neste caso, eu concateno duas strings e adiciono 8 espaços entre elas (estritamente falando, estou concatenando três strings). Para fazer isso, eu uso o SPACE() função como um dos argumentos para o CONCAT() função.

Isso tem o mesmo resultado que digitar todos os 8 espaços:
SELECT CONCAT('Cherry', '        ', 'Blossom') AS Result;

Resultado:
+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

A diferença é que você não precisa digitar todos esses caracteres. Além disso, usando SPACE() torna o código mais fácil de ler.

Outra opção:a função REPEAT()


Outra opção é usar o REPEAT() função. Isso funciona de maneira semelhante a SPACE() exceto que REPEAT() permite especificar outros caracteres (ou seja, não apenas espaços).
SELECT CONCAT('Cherry', REPEAT(' ', 8), 'Blossom') AS Result;

Resultado:
+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

Embora, como você pode ver, isso requer algum código extra que você não precisa especificar ao usar o SPACE() função. Dito isso, pode haver momentos em que REPEAT() funciona melhor para um cenário específico.