二个表在asp.net如何写下面的SQL语句啊,请各位高手们指教一下
请各位大侠指点一下,如何办啊? 
 表type   
 id      物品 
 1         足球 
 2         蓝球 
 3         羽毛球     
 表detail   
 id   物品         数量         状态 
 1      足球         50               入库 
 2      蓝球         30               买出 
 3      足球         14               买出 
 4      羽毛球   45               入库 
 5      蓝球         10               买出 
 6      足球         25               买出   
 如何写出统计现有数据的SQL语句呢? 
 物品      总数      现有库存         买出数量       
 足球         50               11                        39 
 蓝球         -40            0                           40 
 羽毛球   45               45                           0    
 ------------------------------- 
 本人想用asp.net写出,大家能给出思路吗?
------解决方案--------------------  select  
     物品, 
     sum(case when  状态= '入库 ' then 数量 else 0 end) as 总数, 
     sum(case when  状态= '入库 ' then 数量 when  状态= '买出 ' then -1*数量 else 0 end) as 现有库存, 
     sum(case when  状态= '买出 ' then 数量 else 0 end) as 买出数量  
 from T 
 group by 物品
------解决方案--------------------if object_id( 'pubs..detail ') is not null 
    drop table detail 
 go   
 create table detail 
 ( 
 id int, 
 物品 varchar(10), 
 数量 int, 
 状态 varchar(10) 
 )   
 insert into detail(id,物品,数量,状态) values(1,   '足球 '   ,50,      '入库 ') 
 insert into detail(id,物品,数量,状态) values(2,   '蓝球 '   ,30,      '买出 ') 
 insert into detail(id,物品,数量,状态) values(3,   '足球 '   ,14,      '买出 ') 
 insert into detail(id,物品,数量,状态) values(4,   '羽毛球 ' ,45,      '入库 ') 
 insert into detail(id,物品,数量,状态) values(5,   '蓝球 '   ,10,      '买出 ') 
 insert into detail(id,物品,数量,状态) values(6,   '足球 '   ,25,      '买出 ')   
 select 物品 ,  
   case when 总数 = 0 then 总数 - 买出数量 else 总数 end as 总数 ,  
   case when (总数 - 买出数量)  < 0 then 0 else 总数 - 买出数量 end as 现有库存,  
   买出数量  
 from 
 ( 
   select 物品, 
          sum(case when 状态 =  '入库 ' then 数量 else 0 end) as 总数, 
          sum(case when 状态 =  '买出 ' then 数量 else 0 end) as 买出数量 
   from detail 
   group by 物品 
 ) t   
 drop table detail   
 /*result 
 物品       总数        现有库存    买出数量         
 ---------- ----------- ----------- -----------  
 蓝球       -40         0           40 
 羽毛球     45          45          0 
 足球       50          11          39   
 (所影响的行数为 3 行)   
 */
------解决方案--------------------解决了   
 select t1.物品,t1.total,t2.total from ((SELECT 物品,sum(数量) as total 
 FROM goods where states=入库 
 GROUP BY 物品) as t1 inner join (SELECT 物品,sum(数量) as total 
 FROM goods where states=出库 
 GROUP BY 物品) as t2 on t1.物品= t2.物品)