MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

Como REPEAT() funciona no MariaDB


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