メインコンテンツまでスキップ
バージョン: 26.x

REPEAT

説明

REPEAT関数は、指定された文字列を指定された回数繰り返して新しい文字列を生成するために使用されます。この関数は、パディング文字の生成、区切り文字の作成、またはテストデータの生成によく使用されます。

構文

REPEAT(<str>, <count>)

パラメータ

Parameterデスクリプション
<str>繰り返し対象となる元の文字列。型:VARCHAR
<count>繰り返す回数。負でない整数である必要があります。型:INT

戻り値

VARCHAR型を返し、指定された回数だけ文字列が繰り返された結果を表します。

繰り返しルール:

  • countが0より大きい場合、strをcount回繰り返した結果を返します
  • countが0に等しい場合、空文字列を返します
  • countが0より小さい場合、空文字列を返します
  • 結果の文字列が長すぎる場合、文字列長の制限の対象となる可能性があります

特殊ケース:

  • いずれかのパラメータがNULLの場合、NULLを返します
  • strが空文字列の場合、countに関係なく空文字列を返します
  • countが0の場合、空文字列を返します
  • countが負の場合、空文字列を返します

  1. 基本的な文字の繰り返し
SELECT REPEAT('a', 3);
+----------------+
| REPEAT('a', 3) |
+----------------+
| aaa |
+----------------+
  1. 複数文字の文字列繰り返し
SELECT REPEAT('hello', 2);
+--------------------+
| REPEAT('hello', 2) |
+--------------------+
| hellohello |
+--------------------+
  1. ゼロ回の繰り返し
SELECT REPEAT('test', 0);
+-------------------+
| REPEAT('test', 0) |
+-------------------+
| |
+-------------------+
  1. 負の繰り返し
SELECT REPEAT('a', -1);
+-----------------+
| REPEAT('a', -1) |
+-----------------+
| |
+-----------------+
  1. NULL値の処理
SELECT REPEAT(NULL, 3), REPEAT('a', NULL);
+------------------+-------------------+
| REPEAT(NULL, 3) | REPEAT('a', NULL) |
+------------------+-------------------+
| NULL | NULL |
+------------------+-------------------+
  1. 空文字列の繰り返し
SELECT REPEAT('', 5);
+----------------+
| REPEAT('', 5) |
+----------------+
| |
+----------------+
  1. 特殊文字の繰り返し
SELECT REPEAT('-', 10), REPEAT('*', 5);
+------------------+-----------------+
| REPEAT('-', 10) | REPEAT('*', 5) |
+------------------+-----------------+
| ---------- | ***** |
+------------------+-----------------+
  1. UTF-8文字の繰り返し
SELECT REPEAT('ṭṛì', 3), REPEAT('ḍḍu', 2);
+-------------------+-------------------+
| REPEAT('ṭṛì', 3) | REPEAT('ḍḍu', 2) |
+-------------------+-------------------+
| ṭṛìṭṛìṭṛì | ḍḍuḍḍu |
+-------------------+-------------------+
  1. 数値と記号の混在
SELECT REPEAT('123', 3), REPEAT('@#', 4);
+-------------------+------------------+
| REPEAT('123', 3) | REPEAT('@#', 4) |
+-------------------+------------------+
| 123123123 | @#@#@#@# |
+-------------------+------------------+
  1. UTF-8文字の繰り返し
SELECT REPEAT('ṭṛìṭṛì', 3);
+--------------------------------------------------+
| REPEAT('ṭṛìṭṛì', 3) |
+--------------------------------------------------+
| ṭṛìṭṛìṭṛìṭṛìṭṛìṭṛì |
+--------------------------------------------------+

説明

REPEAT関数は、文字列を指定された回数だけ繰り返すために使用されます。

構文

REPEAT( <str>, <count> )

パラメータ

Parameterデスクリプション
<str>繰り返される文字列。
<count>繰り返し回数。非負の整数である必要があります。1未満の場合、空の文字列が返されます。

Return Value

指定された回数だけ繰り返された文字列を返します。特殊なケース:

  • いずれかのParameterがNULLの場合、NULLが返されます。

Examples

SELECT repeat("a", 3);
+----------------+
| repeat('a', 3) |
+----------------+
| aaa |
+----------------+
SELECT repeat("a", -1);
+-----------------+
| repeat('a', -1) |
+-----------------+
| |
+-----------------+