0
我也有類似的對這個問題的一個問題:更新雙路(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
想法?