OBJ_ID GYBZ
2496 割()
2496 铆()
2496 刨()
2496 钳()
2496 铣()
2496 检()
2502 铆(/)
2502 焊(/)
2502 焊(/)
2502 钳(/)
2502 钳(/)
2502 检(/)
2504 割()
2504 铆()
2504 铆()
2504 钳()
2504 车()
2504 车(/)
2504 检(/)
转换成如下格式:OBJ_ID GYBZ
2496 割() 铆() 刨()
2502 铆(/) 焊(/) 焊(/) 钳(/) 钳(/) 检(/)
2504 割() 铆() 铆() 钳() 车() 车(/) 检(/)
是ACCESS数据库,用程序也可以,帮帮忙!多谢了

解决方案 »

  1.   

    1.提取 group by OBJ_ID 的结果集 A
    2.while not A.eof do
        提取group by GYBZ where A.OBJ_ID 结果集 B
    3.while not  B do
       插入新表或临时表
      

  2.   

    最好是格式成标准的SQL语句即可
    否则MSSQL数据库是不能“识别”的
      

  3.   

    access要建立函数才能用sql语句直接得结果,否则在程序中循环处理
      

  4.   

    ACCESS应该是搞不了了,在程序中搞吧
      

  5.   

    自己想了个思路,就是在程序中先把相同obj_id值的gzbz取出来赋给数组,程序如下
    var
      i,j,intSpan,iCount:integer;
      strTemp,strTemp1:string;
    begin
      with ADOQuery do
      begin
        Close;
        SQL.Clear;
        SQL.Text:='SELECT  OBJ_ID, gzbz from A';
        Open;
        iCount  := RecordCount-1 ;
        intSpan :=0;
        for i := intSpan to iCount do
        begin
           strTemp : =  FieldByName( 'OBJ_ID').AsString;
           for j := i+intSpan+1 to iCount do
           begin
                Next;
                strTemp1  : =  FieldByName( 'OBJ_ID').AsString;
                if(strTemp==strTemp1)
                begin
                  ??????
                end;
           end;
           Next;
        end;
      end;
    end;那位高手再给指导下!谢谢了
      

  6.   

    "就是在程序中先把相同obj_id值的gzbz取出来赋给数组"---“1.提取 group by OBJ_ID 的结果集 A
    ”足已看来你没明白?