> For the complete documentation index, see [llms.txt](https://olexsyn.gitbook.io/enote/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://olexsyn.gitbook.io/enote/data/mysql/query_to_variable.md).

# Результат запиту у змінну

## Збереження результату у користувацькій змінній

Розглянемо приклад, де ми використовуємо функцію [`GROUP_CONCAT`](/enote/data/mysql/functions/group_concat.md) для збереження результату у користувацькій змінній.

#### Приклад з таблицею `employees`

Припустимо, у нас є таблиця `employees` з такими даними:

| id | name  |
| -- | ----- |
| 1  | Alice |
| 2  | Bob   |
| 3  | Carol |

Ми хочемо зберегти імена всіх працівників у змінну у вигляді рядка, розділеного комами.

**Кроки:**

1. Створимо таблицю `employees` і вставимо дані (якщо вона ще не існує):

```sql
CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

INSERT INTO employees (id, name) VALUES
(1, 'Alice'),
(2, 'Bob'),
(3, 'Carol');
```

2. Використаємо [`GROUP_CONCAT`](/enote/data/mysql/functions/group_concat.md) для об'єднання імен у один рядок і збережемо результат у користувацьку змінну `@employee_list`:

```sql
SET @employee_list = (SELECT GROUP_CONCAT(name ORDER BY name ASC SEPARATOR ', ') FROM employees);
```

3. Перевіримо значення змінної:

```sql
SELECT @employee_list;
```

#### Очікуваний результат

Після виконання наведених запитів, значення змінної `@employee_list` буде:

| @employee\_list   |
| ----------------- |
| Alice, Bob, Carol |

Таким чином, змінна `@employee_list` буде містити імена всіх працівників, об'єднані в один рядок і розділені комами.

#### Повний приклад

```sql
-- Створення таблиці та вставка даних (виконуйте тільки один раз)
CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

INSERT INTO employees (id, name) VALUES
(1, 'Alice'),
(2, 'Bob'),
(3, 'Carol');

-- Використання GROUP_CONCAT для збереження результату у змінній
SET @employee_list = (SELECT GROUP_CONCAT(name ORDER BY name ASC SEPARATOR ', ') FROM employees);

-- Перевірка значення змінної
SELECT @employee_list;
```

Цей приклад показує, як можна використовувати [`GROUP_CONCAT`](/enote/data/mysql/functions/group_concat.md) для збереження результату у користувацькій змінній та подальшого використання цього значення в інших запитах або виведення.
