我正在做一个连接到Documentum的Java项目,我需要从对象表中检索数据。问题是当我从1个表中检索时,我可以使用以下DQL为以下每个表在最多2秒内获得回答:
SELECT * FROM cosec_general
和
SELECT * FROM dm_dbo.cosec_general_view
但是,一旦我想将这两个表连接在一起从结果中检索,则需要5分钟才能完成。 有什么方法可以让它更快吗? 这是我用来加入它们的DQL我得到了我需要的列:
SELECT dm_dbo.cosec_general_view.name, dm_dbo.cosec_general_view.comp_id,
dm_dbo.cosec_general_view.bg_name, dm_dbo.cosec_general_view.incorporation_date,
dm_dbo.cosec_general_view.status, dm_dbo.cosec_general_view.country_name,
cosec_general.acl_domain, cosec_general.acl_name
FROM dm_dbo.cosec_general_view, cosec_general
答案 0 :(得分:1)
您尝试加入的字段没有条件,
添加包含连接条件的WHERE子句,例如
WHERE dm_dbo.cosec_general_view.field_1=cosec_general.field_2
答案 1 :(得分:0)
你使用的是错误的做法。在查询中
SELECT * FROM cosec_general
星号*
意味着归还我的一切。一旦将信息加载到内存对象操作中,就应该以毫秒为单位进行测量。