请教个SQL语句,分组统计父级和子级数据

 批次号  物料编码  数量   父级物料编码 
 SO01  1005           10    ,
 SO01  100501       12    1005,
 SO02  1005            8    ,
 SO02  100501        9    1005,
 SO01  1006            8    ,
 SO01  100601        9    1006,
 SO01  1007            8    ,
 SO01  100701        9    1007,
 SO02  1008           10    
```,
 SO02  100801       12    1008,

我要统计出,根据批次号,物料编码统计结果如:
 S001  1005    22
 S001  1006    17  
以及下面一种
 1005    39
 1006    17  

父级编码没有为空。

描述不清晰,姑且认为第一个查询是想根据批次号查询批次号、物料编码、数量,第二个查询是想查询某个批次号的每个物料编码的数量总和;

  1. select 批次号,物料编码,数量 from 表名 where 批次号='你想查询的批次号';
  2. select 物料编码,sum(数量) from 表名 where 批次号=‘你想查询的批次号’ group by 物料编码;