SQL排序分组
肥胖的柠檬 2006-11-25 09:04:02 按id与他们的money数相加后不超过他们的maxmoney数,生成新一个排序.
(我也想不出怎样才可以最优地先选择那几条数据在一起).
数据如下:
-----------------------------------
[id],[money],[maxmoney]
1 20 80
1 70 200
1 60 150
2 80 100
2 20 90
2 30 40
2 70 100
3 70 200
3 90 200
4 100 200
4 20 300
4 60 250
-----------------------------结果如下(也可以是别的组合,结果几个money数相加后不超过他们的maxmoney数即可,下面是从上到下的结果)
----------------------------------------------------------
[id],[money],[maxmoney] , [cid] | 或[cid]
1 20 80 1 | 1
1 70 200 2 | 2
1 60 150 1 | 1
2 80 100 1 | 3
2 20 90 2 | 4
2 30 40 3 | 5
2 70 100 2 | 4
3 70 200 1 | 6
3 90 200 1 | 6
4 100 200 1 | 7
4 20 300 1 | 7
4 60 250 1 | 7