首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >过滤掉Oracle 11g报告中的重复条目

过滤掉Oracle 11g报告中的重复条目
EN

Stack Overflow用户
提问于 2012-11-02 02:28:27
回答 1查看 1.1K关注 0票数 1

我们在Windows Server 2008 R2上运行Oracle11g

我目前有一个应用程序,用于管理我们的招聘系统,我们是一家合同工程人力资源公司。

现在,我们已经有了一个相当大的候选人数据库,我们以前与之合作过,我使用Oracle Text使附加的简历可供搜索,这很有效,唯一的问题是我们经常将同一候选人发送到多个工作岗位,以便让他们更快地工作,这意味着我可能会得到相同候选人的简历在搜索结果中出现6到7次,我希望根据候选人的姓名和招聘者姓名来过滤重复的简历,因为我不想只过滤候选人的名字,因为有些人有相同的名字,但通常一个招聘人员只有一个候选人。我知道这并不完美,但可以帮助缩小范围。

我已经尝试了一些方法来删除这些重复项,但是我不能让它工作,下面是我们用来生成搜索结果的当前查询。

代码语言:javascript
运行
复制
select score(1) relevance,
"PKEY",
"DATE_SUB",
"CLIENT",
"CANDIDATE",
"RECRUITER",
"SALES",
dbms_lob.getlength("RESUME") "RESUME",
+"MIMETYPE",
"FILENAME",
"POSITION",
"AVAILABILITY",
"RATE",
"ISSUES",
"WHEN_INT",
"FEEDBACK",
"NOTES"
from "SUBMITTALS"
where CONTAINS (resume, :P11_SEARCH, 1) > 0 order by 1 desc

有什么想法吗?

再次感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-05 19:32:32

您可以使用分析函数来删除重复项:

代码语言:javascript
运行
复制
select * from (
  select score(1) relevance,
  "PKEY",
  "DATE_SUB",
  "CLIENT",
  "CANDIDATE",
  "RECRUITER",
  "SALES",
  dbms_lob.getlength("RESUME") "RESUME",
  "MIMETYPE",
  "FILENAME",
  "POSITION",
  "AVAILABILITY",
  "RATE",
  "ISSUES",
  "WHEN_INT",
  "FEEDBACK",
  "NOTES",
  row_number() over (partition by CANDIDATE, RECRUITER order by PKEY) rn
  from "SUBMITTALS"
  where CONTAINS (resume, :P11_SEARCH, 1) > 0 
 )
 where rn = 1
 order by 1 desc

这将为每个候选人/招聘负责人对返回一行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13183322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档