En MariaDB, REPEAT()
es una función de cadena integrada que devuelve una cadena repetida un cierto número de veces.
Pasas la cadena, así como la cantidad de veces que quieres que se repita cuando llamas a la función.
Sintaxis
La sintaxis es así:
REPEAT(str,count)
Donde str
es la cadena a repetir, y count
es el número de veces que se repite.
Ejemplo
He aquí un ejemplo básico:
SELECT REPEAT('Pow!', 3);
Resultado:
+-------------------+ | REPEAT('Pow!', 3) | +-------------------+ | Pow!Pow!Pow! | +-------------------+
Concatenación con otras cadenas
En este ejemplo pasamos REPEAT()
como argumento para CONCAT()
función para que algunos puntos se antepongan y se añadan a la cadena:
SELECT CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12));
Resultado:
+-------------------------------------------------+ | CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12)) | +-------------------------------------------------+ | ............Dog............ | +-------------------------------------------------+
Recuento bajo
Si el recuento es inferior a 1
, el REPEAT()
la función devuelve una cadena vacía:
SELECT
REPEAT('Pow!', 0),
REPEAT('Pow!', -1);
Resultado:
+-------------------+--------------------+ | REPEAT('Pow!', 0) | REPEAT('Pow!', -1) | +-------------------+--------------------+ | | | +-------------------+--------------------+
Cadena vacía
Esto es lo que sucede cuando se pasa una cadena vacía:
SELECT REPEAT('', 100);
Resultado:
+-----------------+ | REPEAT('', 100) | +-----------------+ | | +-----------------+
Carácter espacial
Sin embargo, una cadena vacía no es lo mismo que el carácter de espacio.
Esto es lo que sucede cuando cambiamos la cadena vacía por un espacio:
SELECT REPEAT(' ', 100);
Resultado:
+------------------------------------------------------------------------------------------------------+ | REPEAT(' ', 100) | +------------------------------------------------------------------------------------------------------+ | | +------------------------------------------------------------------------------------------------------+
Argumento nulo
Proporcionar null
da como resultado null
:
SELECT
REPEAT(null, 5),
REPEAT('Dog', null);
Resultado:
+-----------------+---------------------+ | REPEAT(null, 5) | REPEAT('Dog', null) | +-----------------+---------------------+ | NULL | NULL | +-----------------+---------------------+
Argumento faltante
Llamando a REPEAT()
con el número incorrecto de argumentos, o sin pasar ningún argumento da como resultado un error:
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