解决方案 »

  1.   

    检测大项ID  检测大项名称  检测小项ID  检测小项名称  测试结果  测试建议  备用字段1 2 3 备注  ……
      

  2.   

    一张表呀!检测大项ID    检测大项名称         检测小项ID             检测小项名称               测试结果  检测项等级
    OCT0010A    样品A压力测试        NULL                        NULL                            B级            1
    OCT0010A    样品A压力测试       OCT0010A01         样品A侧面压力测试         B级            2
    OCT0010A    样品A压力测试       OCT0010A02         样品A直面压力测试         B级            2
    MSF0217B    水样R铁含量测试    NULL                        NULL                            B级            1
    ......
      

  3.   

    如果不确定 项目数,可以弄个主从表方式啊~主表
    主表ID 检测批次 备注等字段
    从表
    从表ID 主表ID 项目名称 检测结果等字段
      

  4.   

    拆表。如果你每个大项目,只有 2 - 3 个的话,可以并成一张表,好几百个,拆表是最好选择,后期,你可能有 1000 个明细,如果再增加, SQL Server 就不支持了, 最多是 1024 列。
      

  5.   

    create table z
    (
    id varchar(20),--主键
    xmbh varchar(20),--项目编号
    xmmc varchar(20)--项目名称
    )
     
    create table c
    (
    id varchar(20),--id 和orderid联合主键
    orderid int,
    jg varchar(20) --结果,也可以加个结果的编号
    )
    insert into z values('20141020001','1001','项目1')
    insert into z values('20141020002','1002','项目2')
    insert into z values('20141020003','1001','项目1') insert into c values('20141020003',1,'结果1')
    insert into c values('20141020003',2,'结果2')
    insert into c values('20141020003',3,'结果3') 
    insert into c values('20141020003',4,'结果4') 
    insert into c values('20141020003',5,'结果5') 
    insert into c values('20141020003',6,'结果6') 
    insert into c values('20141020003',7,'结果7') 
      select * from z left join c on z.id=c.id where z.id='20141020001'