Обновление столбцов с порядковым номером, который зависит от MySQL FK - PullRequest
0 голосов
/ 27 июня 2019

У меня есть таблица со следующими столбцами: (это только пример, у меня 34K записей)

Activity,   FK,   Number

Act A       1     Null
Act B       1     Null
Act C       1     Null
Act D       2     Null
Act E       2     Null
Act F       2     Null
Act G       2     Null
Act H       3     Null
Act I       3     Null
Act J       4     Null
Act K       4     Null
Act L       4     Null

Мне нужно обновить номер с порядковым номером в зависимости от FK, чтобы он выглядел следующим образом:

Activity,   FK,   Number

Act A       1     1
Act B       1     2
Act C       1     3
Act D       2     1
Act E       2     2
Act F       2     3
Act G       2     4
Act H       3     1
Act I       3     2
Act J       4     1
Act K       4     2
Act L       4     3

До сих пор я придумал это, но это только создает коррелят, который упорядочивает все внешние ключи

SELECT
    Activity,
    FK,
    @order := @order + 1 as Number
FROM
    table, (SELECT @order := 0) order
ORDER BY
    FK ASC

Я не знаю, как сбросить переменную @order в 1, когда де ФК изменяется, заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...