问一句比较麻烦的SQL语句问题描述:
ID    ColumnA  ColumnB  ColumnC
1     A        B        0
2     A        B        2
3     A        B        04     A        C        0
5     A        C        1
6     A        C        3
7     A        C        0我想根据ColumnA和ColumnB进行排序,然后将分组的顺序值插入ColumnC中,
希望最后ColumnC为有序的整数.其中,非0的往前挪,为0的向后靠
希望运行sql之后的值为:ID    ColumnA  ColumnB  ColumnC
1     A        B        2
2     A        B        1      原先非0,变为1
3     A        B        34     A        C        3      原先为0,
5     A        C        1      原先非0,
6     A        C        2      原先非0,往前靠变为2
7     A        C        4      原先为0其中ID=2和ID=5,ID=6的记录,其ColumnC值原先不为0,保持原有的顺序,只是去掉其中间隔的数,
变成连续的.
其它的ColumnC值原先是0,在此基础上加(按照ID的顺序)有没有效率快点的sql语句?希望能在mysql下或者oracle下运行