Как увеличить счетчик при изменении значения в другом столбце без сортировки столбца?

У меня есть следующая таблица

И мне нужно иметь возможность увеличивать значение счетчика при изменении имени в SQL

Что исправляет отображаемый порядок строк в исходнике, какое выражение ORDER BY? Без этого ваш визуальный порядок строк является поддельным.

Akina 15.12.2020 13:39

mysql и postgresql — это два разных продукта баз данных с разными реализациями sql. Удалены конфликтующие теги товаров. Пожалуйста, добавьте тот, который вы действительно используете.

Shadow 15.12.2020 13:51
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
2
103
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужен столбец, определяющий порядок столбцов, потому что таблицы SQL представляют неупорядоченные наборы. Если он у вас есть, вы можете использовать трюк с промежутками и островами с разницей номеров строк:

select t.*,
       row_number() over (partition by name, seqnum - seqnum_2 order by <ordercol>) as value
from (select t.*,
             row_number() over (order by <ordercol>) as seqnum,
             row_number() over (partition by name order by <ordercol>) as seqnum_2
      from t
     ) t
order by <order col>;

Другие вопросы по теме