LsSqlSel = LsSqlSel & " 3 "
    LsSqlSel = LsSqlSel & ",t.訂正日 "
    LsSqlSel = LsSqlSel & ",t.支店コード "
    LsSqlSel = LsSqlSel & ",b.名称漢字"
    LsSqlSel = LsSqlSel & ",t.科目 "
    LsSqlSel = LsSqlSel & ",k1.Kmkrname "
    LsSqlSel = LsSqlSel & ",t.補助コード "
    LsSqlSel = LsSqlSel & ",k2.kmkrname"
    LsSqlSel = LsSqlSel & ",t.摘要コード "
    LsSqlSel = LsSqlSel & ",u.Tekirname"
    LsSqlSel = LsSqlSel & ",k1.Zeikitei "
    LsSqlSel = LsSqlSel & ",x1.ZINPRNAME"
    LsSqlSel = LsSqlSel & ",t.支店コード "
    LsSqlSel = LsSqlSel & ",b.名称漢字"
    LsSqlSel = LsSqlSel & ",decode(g.業種区分,1," & CstKaiKinCde & ",2," & CstMibaKinCde & ") "
    LsSqlSel = LsSqlSel & ",decode(g.業種区分,1,'" & vKaiKin & "',2,'" & vMibaKin & "') "
    LsSqlSel = LsSqlSel & ",0"
    LsSqlSel = LsSqlSel & ",null"
    LsSqlSel = LsSqlSel & ",null"
    LsSqlSel = LsSqlSel & ",null"
    LsSqlSel = LsSqlSel & ",k3.ZEIKITEI "
    LsSqlSel = LsSqlSel & ",x2.ZINPRNAME "
    LsSqlSel = LsSqlSel & ",t.買掛金額 "
    LsSqlSel = LsSqlSel & ",t.摘要 "
      
    LsSqlFrom = "買掛訂正 t, 業者マスタ g,UMA0BA k1,UMA0BA k2,UMA0BA k3, 部署マスタ b,UMA3BA u , UMK0BA x1, UMK0BA x2 "
    
    LsSqlWhere = LsSqlWhere & " t.年 = " & iTouNen
    LsSqlWhere = LsSqlWhere & " and t.月 = " & iTouGetu
    LsSqlWhere = LsSqlWhere & " and t.削除フラグ = 0 "
    LsSqlWhere = LsSqlWhere & " and t.業者コード = g.業者コード "
    LsSqlWhere = LsSqlWhere & " and to_char(t.科目) = k1.Kmkcd "
    LsSqlWhere = LsSqlWhere & " and k1.Hojokbncd = '0' "
    LsSqlWhere = LsSqlWhere & " and k1.Genskbn=0"
    LsSqlWhere = LsSqlWhere & " and to_char(t.科目) = k2.Kmkcd "
    LsSqlWhere = LsSqlWhere & " and to_char(t.補助コード)= k2.Hojokbncd "
    LsSqlWhere = LsSqlWhere & " and k2.Genskbn=0 "
    LsSqlWhere = LsSqlWhere & " and t.支店コード = b.部署コード "
    LsSqlWhere = LsSqlWhere & " and to_char(t.摘要コード) = u.Tekicd"
    LsSqlWhere = LsSqlWhere & " and k2.tekikbn = u.Tekikbn"
    LsSqlWhere = LsSqlWhere & " and k2.ZEIKITEI = x1.ZEICD"
    LsSqlWhere = LsSqlWhere & " and k3.Kmkcd = decode(g.業種区分,1," & CstKaiKinCde & ",2," & CstMibaKinCde & ") "
    LsSqlWhere = LsSqlWhere & " and k3.Hojokbncd = '0'"
    LsSqlWhere = LsSqlWhere & " and k3.Genskbn=0"
    LsSqlWhere = LsSqlWhere & " and k3.ZEIKITEI= x2.ZEICD "
    LsSqlOrder = " t.訂正日, t.科目, t.支店コード, g.業種区分  "
    
    LsSqlStr = " select "
    LsSqlStr = LsSqlStr & LsSqlSel
    LsSqlStr = LsSqlStr & " From "
    LsSqlStr = LsSqlStr & LsSqlFrom
    LsSqlStr = LsSqlStr & " where "
    LsSqlStr = LsSqlStr & LsSqlWhere
    LsSqlStr = LsSqlStr & " order by "
    LsSqlStr = LsSqlStr & LsSqlOrder
    GetSqlTeisei = LsSqlStr

解决方案 »

  1.   

    一条SQL语句怎么会使计算机死掉呢。
    只不过可能是你的数据量太大,索引没有用好的缘故。
    如果没有用上索引,可能会运行很久,这可能就是你所
    说的死机,优化下你的SQL语句。
      

  2.   

    建议安装一个sql expert for oracle优化一下sql语句,估计是数据库响应的太慢或数据量很大
      

  3.   

    语句复杂,数据量大时,响应时间太长。优化你的sql语句
      

  4.   

    把语句用mesgbox输出看看,是否正常
      

  5.   

    多个表的联合查询语句最好该为对单个或较少个数表的多条sql语句查询,这样效率会高些。