В MariaDB, REPEAT()
е вградена функция за низ, която връща низ, повторен определен брой пъти.
Вие предавате низа, както и колко пъти искате да се повтори, когато извикате функцията.
Синтаксис
Синтаксисът е така:
REPEAT(str,count)
Където str
е низът за повторение и count
е колко пъти трябва да се повтори.
Пример
Ето един основен пример:
SELECT REPEAT('Pow!', 3);
Резултат:
+-------------------+ | REPEAT('Pow!', 3) | +-------------------+ | Pow!Pow!Pow! | +-------------------+
Конкатенация с други низове
В този пример предаваме REPEAT()
като аргумент на CONCAT()
функция, така че някои точки да бъдат поставени преди и добавени към низа:
SELECT CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12));
Резултат:
+-------------------------------------------------+ | CONCAT(REPEAT('.', 12), 'Dog', REPEAT('.', 12)) | +-------------------------------------------------+ | ............Dog............ | +-------------------------------------------------+
Нисък брой
Ако броят е по-малък от 1
, REPEAT()
функцията връща празен низ:
SELECT
REPEAT('Pow!', 0),
REPEAT('Pow!', -1);
Резултат:
+-------------------+--------------------+ | REPEAT('Pow!', 0) | REPEAT('Pow!', -1) | +-------------------+--------------------+ | | | +-------------------+--------------------+
Празен низ
Ето какво се случва, когато се предаде празен низ:
SELECT REPEAT('', 100);
Резултат:
+-----------------+ | REPEAT('', 100) | +-----------------+ | | +-----------------+
Символ за интервал
Празният низ обаче не е същият като символа за интервал.
Ето какво се случва, когато променим празния низ в интервал:
SELECT REPEAT(' ', 100);
Резултат:
+------------------------------------------------------------------------------------------------------+ | REPEAT(' ', 100) | +------------------------------------------------------------------------------------------------------+ | | +------------------------------------------------------------------------------------------------------+
Нулев аргумент
Предоставяне на null
води до null
:
SELECT
REPEAT(null, 5),
REPEAT('Dog', null);
Резултат:
+-----------------+---------------------+ | REPEAT(null, 5) | REPEAT('Dog', null) | +-----------------+---------------------+ | NULL | NULL | +-----------------+---------------------+
Липсващ аргумент
Извикване на REPEAT()
с грешен брой аргументи или без подаване на аргументи води до грешка:
SELECT REPEAT();
Резултат:
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