在前台操作中得到三个表:
   领入表:
        领入时间         配件编号         领入数量
        2003-5-7          3                 100
                          4                 400
         2003-5-9         3                 47
                          6                  2345
   部门领出表:
        部门领出时间    配件编号         部门领出数量
        2003-10-9         3                 10
                          6                 400
         2003-11-7        4                 6
   个人领出表:
        个人领出时间    配件编号         个人领出数量
        2003-9-9         3                 7
                          6                 7
         2003-9-27        3                 2  现我在后台查看时得到:“关于配件编号的领入领出情况”,希望得到的界面如下    配件编号  领入时间    数量   部门领出时间   数量  个人领出时间  数量
   ---------  --------    ----   ------------   ----   -----------  ----  
(1)   3     2003-5-7  100    2003-10-9     10    2003-9-7    7
(2)         2003-5-9   47                          2003-9-27   2 我若用join连接三个表,则(2)条记录无
  若用了left join连接三个表,则会变成4条记录(1对多)
请教各位大侠:1  若用join显示如何写语句
              2  若join不行,可否还有其它方法,比如直接建个库表?
                Mshflexgrid可以显示层次结构,不知这里好用么??
                           

解决方案 »

  1.   

    非用Join
    Select a.配件编号,a.领入时间,a.数量,b.部门领出时间,b.数量,c.个人领出时间,c.数量
    From 领入表 a,部门领出表 b,个人领出表 c
    Where a.配件编号=b.配件编号 And a.配件编号=c.配件编号 And ...
    用Join
    Select a.配件编号,a.领入时间,a.数量,b.部门领出时间,b.数量,c.个人领出时间,c.数量
    From 领入表 a Inner Join 
         部门领出表 b On a.配件编号=b.配件编号 Inner Join 
         个人领出表 c On a.配件编号=c.配件编号
    Where ... 
    MshflexGrid我不知道
    但我用過VsflexGrid它可以分層次顯示.你可參考一下,好像代碼是:
    VsFlexGrid1.MergeCells = flexMergeFree
    VsFlexGrid1.MergeCol(列號) = True  '行號所在的列分層,相同的組合成一個框
    VsFlexGrid1.MergeRow(行號) = True  '行號所在的行分層,相同的組合成一個框