如果确定只有两层,可以用sql查出,思路:1、整体分两部分,第一部分查出所有的主料,“是否有下一层”为02、两个bom表关联,用子物料名与主物料名关联,查出所有包含子物料的主物料名3、第一部分查出来的数据与第二部分关联,用物料名称关联,取第二部分主物料名为**,条件限制之后,就能取出所有真正的没有子物料的主物料4、用3的结果与2的结果union all,取得所有要的结果。查询之前,先要给bom表做一个主键id字段,要不然还得做联合主键,更麻烦了。sql语句如下:select c.* from bom c, (select b.id,b.主物料,b.子物料,b.数量 from bom a,bom bwhere a.主物料=b.子物料) dwhere c.id=d.id and d.id ** ** and c.是否下一层=0union allselect f.* from (select d.id,d.主物料,d.子物料,d.数量 from bom e,bom d where e.主物料=d.子物料) f真正做的时候,可以将第二部的关联,做成一个临时表,这样就不用写两次sql语句了。 20210311
看不下去了给表s**e的id列添加备注“序号”exec sp_addextendedproperty 'ms_description','序号','user',dbo,'table','s**e','column',id以及查询s**e表所有列的备注selecta.name as table_name...