求一段SQL代码,谢谢大家!
表:product(产品表) 
 pro_id   pro_name      pro_lower(库存下限)      pro_upper(库存上限) 
       1               电视                        5                                                                  50 
       2               水果                        10                                                               60 
 表:stock(库存表) 
    sto_id   pro_id      pro_amount(数量)   pro_stoarage(所在仓库) 
          1                  1                           3                                                      1 
          2                  1                           1                                                      2 
          3                  2                           30                                                   1 
          4                  2                           10                                                   2   
 表:storage   (仓库表) 
 storage_id      storage_name 
          1                                 主仓库 
          2                                 家电库 
 如何在存储过程中汇总得到: 
 pro_id   pro_name   pro_amount(总数量)   主仓库(数量)      家电库(数量)         ... 
             1               电视                        4                                                3                                       1 
             2               水果                        40                                             30                                    10   
 并且能分别查询出: 
 库存总数量 <产品表中产品下限的产品 
 库存总数量> 产品表中产品上限的产品
------解决方案--------------------declare @sql varchar(8000) 
 set @sql= ' '   
 select @sql=@sql+ ',[ '+storage_name 
                 + '(数量)]=sum(case pro_stoarage when  '+rtrim(storage_id) 
                 + ' then pro_amount else 0 end) ' 
 from storage   
 set @sql=  'select p.pro_id,p.pro_name,pro_amount=sum(pro_amount) '+@sql 
          + ' from product p,stock s where p.pro_id=s.pro_id group by p.pro_id,p.pro_name '   
 exec(@sql)
------解决方案--------------------<