У меня есть вопрос, похожий на этот вопрос:Обновление Dual (2-D) Столбцы Секвенциально в MySQL
updating columns with a sequence number mysql
Однако, у меня есть второй столбец, который также «иногда» потребности обновляется. Например, рассмотрим следующую таблицу:
uID | X | Y
1 | 6 | 0
2 | 2 | 0
3 | 7 | 0
4 | 7 | 1
5 | 3 | 0
6 | 1 | 0
Я хотел бы «X» повторно упорядочены последовательно, которые я могу сделать с раствором со ссылкой, выше:
SET @rank:=0;
UPDATE `myTable` SET
X = @rank:= @rank+1
ORDER BY X
Однако, если запись имеет Значения Y больше 0. Мне нужно, чтобы его X обновлялся одновременно. Значение Y, являющееся двумерным значением, должно оставаться с его «X». Имеют смысл? Поэтому мне нужно, чтобы стол был в конечном итоге:
uID | X | Y
6 | 1 | 0
2 | 2 | 0
5 | 3 | 0
1 | 4 | 0
3 | 5 | 0
4 | 5 | 1
Идеи?