No MariaDB,
REPEAT() é uma função de string interna que retorna uma string repetida um certo número de vezes. Você passa a string, bem como o número de vezes que deseja que ela seja repetida ao chamar a função.
Sintaxe
A sintaxe fica assim:
REPEAT(str,count) Onde
str é a string a ser repetida e count é o número de vezes para repeti-lo. Exemplo
Segue um exemplo básico:
SELECT REPEAT('Pow!', 3); Resultado:
+-------------------+
| REPEAT('Pow!', 3) |
+-------------------+
| Pow!Pow!Pow! |
+-------------------+ Concatenação com outras strings
Neste exemplo passamos
REPEAT() como um argumento para o CONCAT() função para que alguns pontos sejam prefixados e anexados à string:SELECT CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12)); Resultado:
+-------------------------------------------------+
| CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12)) |
+-------------------------------------------------+
| ............Dog............ |
+-------------------------------------------------+ Contagem baixa
Se a contagem for menor que
1 , o REPEAT() função retorna uma string vazia:SELECT
REPEAT('Pow!', 0),
REPEAT('Pow!', -1); Resultado:
+-------------------+--------------------+
| REPEAT('Pow!', 0) | REPEAT('Pow!', -1) |
+-------------------+--------------------+
| | |
+-------------------+--------------------+ String vazia
Aqui está o que acontece quando uma string vazia é passada:
SELECT REPEAT('', 100); Resultado:
+-----------------+
| REPEAT('', 100) |
+-----------------+
| |
+-----------------+ Caráter Espacial
Uma string vazia não é o mesmo que o caractere de espaço.
Aqui está o que acontece quando alteramos a string vazia para um espaço:
SELECT REPEAT(' ', 100); Resultado:
+------------------------------------------------------------------------------------------------------+
| REPEAT(' ', 100) |
+------------------------------------------------------------------------------------------------------+
| |
+------------------------------------------------------------------------------------------------------+ Argumento nulo
Fornecendo
null resulta em null :SELECT
REPEAT(null, 5),
REPEAT('Dog', null); Resultado:
+-----------------+---------------------+
| REPEAT(null, 5) | REPEAT('Dog', null) |
+-----------------+---------------------+
| NULL | NULL |
+-----------------+---------------------+ Argumento ausente
Chamando
REPEAT() com o número errado de argumentos ou sem passar nenhum argumento resulta em um erro:SELECT REPEAT(); Resultado:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1