Чтобы обновить колонку в существующей таблице так, чтобы каждая следующая строка имела значение, увеличивающееся на 1, начиная с 1, вы можете воспользоваться следующими методами в MariaDB.
### Пример SQL-запроса
Предположим, у вас есть таблица `my_table` с колонкой `my_column`, которую вы хотите заполнить. Вот один из способов, как это можно сделать:
1. **Создание временной таблицы для нумерации** (если необходимо): Вы можете создать временную таблицу для нумерации строк.
```sql
CREATE TEMPORARY TABLE temp_numbers AS
SELECT @rownum := @rownum + 1 AS rownum, id
FROM my_table, (SELECT @rownum := 0) r
ORDER BY id;
```
2. **Обновление существующего столбца** с использованием временной таблицы:
```sql
UPDATE my_table
JOIN temp_numbers ON my_table.id = temp_numbers.id
SET my_table.my_column = temp_numbers.rownum;
```
### Альтернативный способ с использованием подзапроса
Если хотите сделать всё за один запрос, можно использовать переменные непосредственно в одном запросе:
```sql
SET @rownum = 0;
UPDATE my_table
SET my_column = (@rownum := @rownum + 1)
ORDER BY id;
```
### Объяснение:
- В первом случае мы создаем временную таблицу `temp_numbers`, которая содержит результирующие номера строк вместе с идентификаторами.
- Во втором запросе мы используем переменные MariaDB для задания значения `my_column` через инкремент переменной `@rownum`.
### Обратите внимание:
- Убедитесь, что у вас есть уникальный идентификатор (например, `id`), по которому можно упорядочивать строки.
- Если у вас есть уже какие-то данные в `my_column`, они будут перезаписаны. Убедитесь в этом, прежде чем выполнять запрос.