WINFROM中现在我根据 采购清单号COMBOBOX查出DATAGRIDVIEW里的数据
显示如下:
编号  品名  单机用量 合计1 [供应商1 单价/含税1 合计2 供应商2 单价/含税2 合计3 供应商3 单价/含税3] //需要实现的
H-23      XX      3
H-23-01   YY      3
H-23-02   ZZ      1
H-23-03   AA      2另外我有张供应商表;
字段如下:
物料号 供应商 单价
H-23   KK公司  1.5
H-23   ZZ公司  0.5
H-23   MM公司  2.5
H-23   TT公司  3.5
H-23   NN公司  6.5
现在要如何在接下来的空的数据里显示 单价 最低的前3条记录放到空的DGV里呢//合计是单价*单机用量
这条SQL该怎么写

解决方案 »

  1.   

    编号  品名 单机用量 合计1 供应商1 单价/含税1 合计2 供应商2 单价/含税2 合计3 供应商3 单价/含税H-23 XX    3       1.5 ZZ公司    0.5     4.5   KK公司   1.5      7.5  MM公司   2.5要查到单价最小的3条数据放入:
    合计1 供应商1 单价/含税1 合计2 供应商2 单价/含税2 合计3 供应商3 单价/含税现在就查到 编号 品名 单机用量
      

  2.   

    如何在接下来的空的数据里显示 单价 最低的前3条记录放到空的DGV里呢
    ----------
    空的数据表里显示,你可以用虚拟表,或是insert一个新表最低min,前三可以用top  脑袋不好使,不知道怎么恢复。
      

  3.   

    TOP1 TOP2 TOP3吗?没用的吧 最低的话OREDER BY就行了吧,现在不知道怎么把数据这样放进去显示
      

  4.   

    select *,物料号+'-0'+str(rn) as 物料编号 from 
               (select *,rn=row_number()over(partition by 物料号 order by 单价 desc from 供应商表 ) where rn between 1 and 3
    --得到单价最小前三个
    至于其它的,数据不够明确