超复杂的计算问题,如何通过SQL和C#实现,高分求救!!!!!!!!!

WONGRAIN 2009-03-18 07:52:56
id cu no qty1
1 a ABC 20
2 a ABC 30
3 a BCD 40
4 b BCD 20
5 b BCD 30
6 c ABC 10
7 c BCD 20
表 1

cu no qty2
a ABC 45
a BCD 30
b BCD 40
c ABC 10
c BCD 30
表 2

id cu no qty1 结果
1 a ABC 20 20
2 a ABC 30 25
3 a BCD 40 30
4 b BCD 20 20
5 b BCD 30 20
6 c ABC 10 10
7 c BCD 20 30
结果
表1,表2分别为临时表,通过表1,表2的cu和no关联,用表2的QTY2填充成表3的结果,如何能够实现。
如id1,2,a的ABC在表1的数量分别为20,30但表2的a的ABC只有45,按先后顺序,先满足了ID小的,再填入id大的,直到QTY2数量分配完毕,当有剩余时全部放到最后的ID 上。
...全文
66 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
SAP辉哥 2009-03-31
  • 打赏
  • 举报
回复
一条SQL语句搞定有点困难,还在研究;顶一下
select a.id,a.cu,a.no,a.qty1 ,case when a.qty1>=b.qty2 then b.qty2 else a.qty1 end as 结果
from table1 a , table2 b where a.cu=b.cu and a.no=b.no
目前写到这儿,还在找思路。
wjhx 2009-03-31
  • 打赏
  • 举报
回复
看了就发晕,先顶一下
MicroDeviser 2009-03-31
  • 打赏
  • 举报
回复
顶,自己慢慢写
zzxap 2009-03-19
  • 打赏
  • 举报
回复
好晕,去SQL版吧。。。

[code=SQL]
select c.id,c.cu,c.no,c.qty1 ,结果 =case when c.qty1<c.qty2 then qty1 ..
from
(
SELECT a.*,b.qty2 from tableA a left join tableB b on a.cu=b.cu and a.no=b.no

)c


[/CODE]
gisyellow 2009-03-18
  • 打赏
  • 举报
回复
好复杂的逻辑。。帮顶。。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧