> ## 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.

> Modifica uma string JSON com variações aleatórias.

# fuzzJSON

Modifica uma string JSON com variações aleatórias.

<div id="syntax">
  ## Sintaxe
</div>

```sql theme={null}
fuzzJSON({ named_collection [, option=value [,..]] | json_str[, random_seed] })
```

<div id="arguments">
  ## Argumentos
</div>

| Argumento | Descrição |
| - | - |
| `named_collection` | Uma [NAMED COLLECTION](/pt-BR/reference/statements/create/named-collection). |
| `option=value` | Parâmetros opcionais da coleção nomeada e seus valores. |
| `json_str` (String) | A string de origem que representa dados estruturados no formato JSON. |
| `random_seed` (UInt64) | Semente aleatória manual para produzir resultados estáveis. |
| `reuse_output` (boolean) | Reutiliza a saída de um processo de fuzzing como entrada para o próximo fuzzer. |
| `malform_output` (boolean) | Gera uma string que não pode ser interpretada como um objeto JSON. |
| `max_output_length` (UInt64) | Comprimento máximo permitido da string JSON gerada ou modificada. |
| `probability` (Float64) | A probabilidade de aplicar fuzzing a um campo JSON (um par chave-valor). Deve estar no intervalo \[0, 1]. |
| `max_nesting_level` (UInt64) | A profundidade máxima permitida para estruturas aninhadas nos dados JSON. |
| `max_array_size` (UInt64) | O tamanho máximo permitido de um array JSON. |
| `max_object_size` (UInt64) | O número máximo permitido de campos em um único nível de um objeto JSON. |
| `max_string_value_length` (UInt64) | O comprimento máximo de um valor String. |
| `min_key_length` (UInt64) | O comprimento mínimo da chave. Deve ser de pelo menos 1. |
| `max_key_length` (UInt64) | O comprimento máximo da chave. Deve ser maior ou igual a `min_key_length`, se especificado. |

<div id="returned-value">
  ## Valor retornado
</div>

Um objeto de tabela com uma única coluna que contém strings JSON perturbadas.

<div id="usage-example">
  ## Exemplo de uso
</div>

```sql theme={null}
CREATE NAMED COLLECTION json_fuzzer AS json_str='{}';
SELECT * FROM fuzzJSON(json_fuzzer) LIMIT 3;
```

```text theme={null}
{"52Xz2Zd4vKNcuP2":true}
{"UPbOhOQAdPKIg91":3405264103600403024}
{"X0QUWu8yT":[]}
```

```sql theme={null}
SELECT * FROM fuzzJSON(json_fuzzer, json_str='{"name" : "value"}', random_seed=1234) LIMIT 3;
```

```text theme={null}
{"key":"value", "mxPG0h1R5":"L-YQLv@9hcZbOIGrAn10%GA"}
{"BRE3":true}
{"key":"value", "SWzJdEJZ04nrpSfy":[{"3Q23y":[]}]}
```

```sql theme={null}
SELECT * FROM fuzzJSON(json_fuzzer, json_str='{"students" : ["Alice", "Bob"]}', reuse_output=true) LIMIT 3;
```

```text theme={null}
{"students":["Alice", "Bob"], "nwALnRMc4pyKD9Krv":[]}
{"students":["1rNY5ZNs0wU&82t_P", "Bob"], "wLNRGzwDiMKdw":[{}]}
{"xeEk":["1rNY5ZNs0wU&82t_P", "Bob"], "wLNRGzwDiMKdw":[{}, {}]}
```

```sql theme={null}
SELECT * FROM fuzzJSON(json_fuzzer, json_str='{"students" : ["Alice", "Bob"]}', max_output_length=512) LIMIT 3;
```

```text theme={null}
{"students":["Alice", "Bob"], "BREhhXj5":true}
{"NyEsSWzJdeJZ04s":["Alice", 5737924650575683711, 5346334167565345826], "BjVO2X9L":true}
{"NyEsSWzJdeJZ04s":["Alice", 5737924650575683711, 5346334167565345826], "BjVO2X9L":true, "k1SXzbSIz":[{}]}
```

```sql theme={null}
SELECT * FROM fuzzJSON('{"id":1}', 1234) LIMIT 3;
```

```text theme={null}
{"id":1, "mxPG0h1R5":"L-YQLv@9hcZbOIGrAn10%GA"}
{"BRjE":16137826149911306846}
{"XjKE":15076727133550123563}
```

```sql theme={null}
SELECT * FROM fuzzJSON(json_nc, json_str='{"name" : "FuzzJSON"}', random_seed=1337, malform_output=true) LIMIT 3;
```

```text theme={null}
U"name":"FuzzJSON*"SpByjZKtr2VAyHCO"falseh
{"name"keFuzzJSON, "g6vVO7TCIk":jTt^
{"DBhz":YFuzzJSON5}
```
