首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

6000条数据,java下跑了20多分钟了还没跑完,求教怎么改进

2012-04-22 
6000条数据,java下跑了20多分钟了还没跑完,求教如何改进。String sql select c.BRANCH_CODE || - || a

6000条数据,java下跑了20多分钟了还没跑完,求教如何改进。
String sql = "
select c.BRANCH_CODE || '-' || a.RES_DETAIL_NAME as BRANCH_CODE_NAME,
  dic7.member_value || '-' || dic7.member_text as COUNTRY_NAME,
  dic38.member_value || '-' || dic38.member_text as WWIC_NAME,
  dic11.member_value || '-' || dic11.member_text as LEGAL_STATUS_NAME,
  dic15.member_value || '-' || dic15.member_text as RESIDENT_CODE_NAME,
  dic12.member_value || '-' || dic12.member_text as PROF_BUSINESS_NAME,
  dic16.member_value || '-' || dic16.member_text as GROUP_CODE_NAME,
  dic13.member_value || '-' || dic13.member_text as ADVISOR_CODE_NAME,
  dic14.member_value || '-' || dic14.member_text as COUNTRY_CODE_NAME,
  dic18.member_value || '-' || dic18.member_text as KWG_REP_INDICATOR_NAME,
  dic21.member_value || '-' || dic21.member_text as HO_PROF_BUSINESS_CODE_NAME,
  dic19.member_value || '-' || dic19.member_text as BANK_CODE_NAME,
  dic23.member_value || '-' || dic23.member_text as MNC_CODE_NAME,
  dic24.member_value || '-' || dic24.member_text as OWNERSHIP_OF_MNC_NAME,
  dic25.member_value || '-' || dic25.member_text as SIZE_CLASSIFICATION_NAME,
  dic53.member_value || '-' || dic53.member_text as PRIMARY_CUSTOMER_NAME,
  c.*
  from ci_idms_basic_master_cmp_log c
  left join (select distinct t.RES_DETAIL_VALUE, t.RES_DETAIL_NAME
  from view_ci_auth_role_resource t
  where role_id in (select role_id
  from view_ci_auth_role_user
  where user_id = 'admin')
  and t.RES_ID = '53') a on a.RES_DETAIL_VALUE =
  c.branch_code
  left join ci_sys_sov_member dic7 on c.COUNTRY = dic7.member_value
  and dic7.group_code = 'IX_COUNTRY'
  and dic7.sys_type = 'IDMS'
  and dic7.branch_code = '0912'
  left join ci_sys_sov_member dic38 on c.WWIC = dic38.member_value
  and dic38.group_code = 'IX_WWIC'
  and dic38.sys_type = 'IDMS'
  and dic38.branch_code = '0912'
  left join ci_sys_sov_member dic11 on c.LEGAL_STATUS = dic11.member_value
  and dic11.group_code =
  'IX_LEGAL_STATUS'
  and dic11.sys_type = 'IDMS'
  and dic11.branch_code = '0912'
  left join ci_sys_sov_member dic15 on c.RESIDENT_CODE =
  dic15.member_value
  and dic15.group_code =
  'IX_RESIDENT_CODE'
  and dic15.sys_type = 'IDMS'
  and dic15.branch_code = '0912'
  left join ci_sys_sov_member dic12 on c.PROF_BUSINESS =
  dic12.member_value
  and dic12.group_code =
  'IX_PROF_BUSINESS'
  and dic12.sys_type = 'IDMS'
  and dic12.branch_code = '0912'
  left join ci_sys_sov_member dic16 on c.GROUP_CODE = dic16.member_value
  and dic16.group_code = 'IX_GROUP_CODE'
  and dic16.sys_type = 'IDMS'


  and dic16.branch_code = '0912'
  left join ci_sys_sov_member dic13 on c.ADVISOR_CODE = dic13.member_value
  and dic13.group_code =
  'IX_ADVISOR_CODE'
  and dic13.sys_type = 'IDMS'
  and dic13.branch_code = '0912'
  left join ci_sys_sov_member dic14 on c.COUNTRY_CODE = dic14.member_value
  and dic14.group_code = 'IX_COUNTRY'
  and dic14.sys_type = 'IDMS'
  and dic14.branch_code = '0912'
  left join ci_sys_sov_member dic18 on c.KWG_REP_INDICATOR =
  dic18.member_value
  and dic18.group_code =
  'ALL_KWG_REP_INDICATOR'
  and dic18.sys_type = 'IDMS'
  and dic18.branch_code = '0912'
  left join ci_sys_sov_member dic21 on c.HO_PROF_BUSINESS_CODE =
  dic21.member_value
  and dic21.group_code =
  'IX_HO_PROF_BUSINESS'
  and dic21.sys_type = 'IDMS'
  and dic21.branch_code = '0912'
  left join ci_sys_sov_member dic19 on c.BANK_CODE = dic19.member_value
  and dic19.group_code = 'IX_BANK_CODE'
  and dic19.sys_type = 'IDMS'
  and dic19.branch_code = '0912'
  left join ci_sys_sov_member dic23 on c.MNC_CODE = dic23.member_value
  and dic23.group_code = 'IX_MNC_CODE'
  and dic23.sys_type = 'IDMS'
  and dic23.branch_code = '0912'
  left join ci_sys_sov_member dic24 on c.OWNERSHIP_OF_MNC =
  dic24.member_value
  and dic24.group_code = 'IX_COUNTRY'
  and dic24.sys_type = 'IDMS'
  and dic24.branch_code = '0912'
  left join ci_sys_sov_member dic25 on c.SIZE_CLASSIFICATION =
  dic25.member_value
  and dic25.group_code =
  'IX_SIZE_CLASSIFICATION'
  and dic25.sys_type = 'IDMS'
  and dic25.branch_code = '0912'
  left join ci_sys_sov_member dic53 on c.PRIMARY_CUSTOMER =
  dic53.member_value
  and dic53.group_code = 'ALL_YES_NO'
  and dic53.sys_type = 'IDMS'
  and dic53.branch_code = '0912'
  left join ci_sys_sov_member dic55 on c.P1G_ZONE = dic55.member_value
  and dic55.group_code = 'ALL_A_B'
  and dic55.sys_type = 'IDMS'
  and dic55.branch_code = '0912'
  left join ci_sys_sov_member dic56 on c.COUNTERPARTY_CLASS =
  dic56.member_value
  and dic56.group_code =
  'IX_COUNTERPARTY_CLASS'


  and dic56.sys_type = 'IDMS'
  and dic56.branch_code = '0912'
  left join ci_sys_sov_member dic41 on c.SPECIAL_SPECIAL_IND =
  dic41.member_value
  and dic41.group_code = 'ALL_YES_NO'
  and dic41.sys_type = 'IDMS'
  and dic41.branch_code = '0912'
  left join ci_sys_sov_member dic45 on c.EX_RATE_FOR_TXNS =
  dic45.member_value
  and dic45.group_code = 'ALL_S_M'
  and dic45.sys_type = 'IDMS'
  and dic45.branch_code = '0912'
  left join ci_sys_sov_member dic46 on c.EX_RATE_FOR_CHARGES =
  dic46.member_value
  and dic46.group_code = 'ALL_S_M'
  and dic46.sys_type = 'IDMS'
  and dic46.branch_code = '0912'
  left join ci_sys_sov_member dic44 on c.WAIVE_CHARGE = dic44.member_value
  and dic44.group_code = 'ALL_YES_NO'
  and dic44.sys_type = 'IDMS'
  and dic44.branch_code = '0912'
  left join ci_sys_sov_member dic49 on c.STRAIGHT_THRU_PROCESS =
  dic49.member_value
  and dic49.group_code = 'ALL_YES_NO_E'
  and dic49.sys_type = 'IDMS'
  and dic49.branch_code = '0912'
  where 1 = 1
  and c.branch_code = '0912'
  order by c.master_number, c.REVISION desc
  ";  
  List list = jdbcTemplate.queryForList(sql,ps.toArray());
  以上SQL,在本地跑了10多分钟。

  其实总共就6000多条数据。

  数据量也不大呀,为什么跑这么长的时间呀。



[解决办法]

热点排行