0

您能否帮助我了解在我的代码中合并的独特复杂 SQL 请求和几个简单 SQL 请求之间的最佳解决方案是什么?

  • 假设我在一个工作机会网站上工作。工作机会由能力组成。每个能力都列在一个感兴趣的领域中。例如,能力可能是 C#,而他感兴趣的领域是 IT。播音员可以创建新的工作机会并选择 C# 作为工作所需的能力。

  • 另一方面,用户选择两个、三个或更多个感兴趣的区域。是的,我们的用户不会选择他们的能力,而是选择他们感兴趣的领域。以免我的用户 xxx 选择三个感兴趣的区域。

在他的主页上,我想按日期显示这三个兴趣领域的新工作机会列表。我应该在我的代码中做什么。

  1. 一个独特的复杂 SQL 请求,包含我的用户的能力和兴趣领域以及我的用户的兴趣领域和我的用户表以及我的用户的 WHERE 子句的工作机会

  2. 一个更简单的 SQL 请求,调用 3 次以获得 3 个工作机会列表,并在能力和兴趣领域加入工作机会,并在我的兴趣领域使用 WHERE 子句,然后将我的三个列表合并到我的代码中。

如果我需要在工作机会日期排序我的列表,但突出显示或优先考虑可能在多个感兴趣领域的工作机会。

编辑

我有一个数据库要求:我只需要使用存储过程

4

1 回答 1

1

在 99% 的情况下,一个复杂的查询要好得多。

但是,如果您需要非常频繁地处理数据并且不需要一直使用最新数据,您当然可以在代码中重新实现数据库逻辑并获得更好的性能。但这只有在您经常使用数据并且在此期间可以忽略任何更改时才有效。请记住,通过适当的索引和优化来实现所有连接逻辑是一项相当多的工作。我建议这不值得付出努力。

于 2013-03-06T09:40:47.363 回答