> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ClickHouse の loop テーブル関数は、クエリ結果を無限に繰り返し返すために使用されます。

# loop

<div id="syntax">
  ## 構文
</div>

```sql theme={null}
SELECT ... FROM loop(database, table);
SELECT ... FROM loop(database.table);
SELECT ... FROM loop(table);
SELECT ... FROM loop(other_table_function(...));
```

<div id="arguments">
  ## 引数
</div>

| 引数 | 説明 |
| - | - |
| `database` | データベース名。 |
| `table` | テーブル名。 |
| `other_table_function(...)` | 別のテーブル関数。例：`SELECT * FROM loop(numbers(10));` この場合、`other_table_function(...)` は `numbers(10)` です。 |

<div id="returned-values">
  ## 戻り値
</div>

クエリ結果を返すための無限ループ。

<div id="examples">
  ## 例
</div>

ClickHouse からデータを選択する例:

```sql theme={null}
SELECT * FROM loop(test_database, test_table);
SELECT * FROM loop(test_database.test_table);
SELECT * FROM loop(test_table);
```

または、他のテーブル関数を使用することもできます:

```sql theme={null}
SELECT * FROM loop(numbers(3)) LIMIT 7;
   ┌─number─┐
1. │      0 │
2. │      1 │
3. │      2 │
   └────────┘
   ┌─number─┐
4. │      0 │
5. │      1 │
6. │      2 │
   └────────┘
   ┌─number─┐
7. │      0 │
   └────────┘
```

```sql theme={null}
SELECT * FROM loop(mysql('localhost:3306', 'test', 'test', 'user', 'password'));
...
```
