In MariaDB, REPEAT()
is a built-in string function that returns a string repeated a certain number of times.
You pass the string, as well as the number of times you want it repeated when you call the function.
Syntax
The syntax goes like this:
REPEAT(str,count)
Where str
is the string to repeat, and count
is the number of times to repeat it.
Example
Here’s a basic example:
SELECT REPEAT('Pow!', 3);
Result:
+-------------------+ | REPEAT('Pow!', 3) | +-------------------+ | Pow!Pow!Pow! | +-------------------+
Concatenation with Other Strings
In this example we pass REPEAT()
as an argument to the CONCAT()
function so that some dots are prepended and appended to the string:
SELECT CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12));
Result:
+-------------------------------------------------+ | CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12)) | +-------------------------------------------------+ | ............Dog............ | +-------------------------------------------------+
Low Count
If the count is less than 1
, the REPEAT()
function returns an empty string:
SELECT
REPEAT('Pow!', 0),
REPEAT('Pow!', -1);
Result:
+-------------------+--------------------+ | REPEAT('Pow!', 0) | REPEAT('Pow!', -1) | +-------------------+--------------------+ | | | +-------------------+--------------------+
Empty String
Here’s what happens when an empty string is passed:
SELECT REPEAT('', 100);
Result:
+-----------------+ | REPEAT('', 100) | +-----------------+ | | +-----------------+
Space Character
An empty string is not the same as the space character though.
Here’s what happens when we change the empty string to a space:
SELECT REPEAT(' ', 100);
Result:
+------------------------------------------------------------------------------------------------------+ | REPEAT(' ', 100) | +------------------------------------------------------------------------------------------------------+ | | +------------------------------------------------------------------------------------------------------+
Null Argument
Providing null
results in null
:
SELECT
REPEAT(null, 5),
REPEAT('Dog', null);
Result:
+-----------------+---------------------+ | REPEAT(null, 5) | REPEAT('Dog', null) | +-----------------+---------------------+ | NULL | NULL | +-----------------+---------------------+
Missing Argument
Calling REPEAT()
with the wrong number of arguments, or without passing any arguments results in an error:
SELECT REPEAT();
Result:
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