【问题标题】:Nested and complicated select statement嵌套复杂的select语句
【发布时间】:2011-06-07 08:15:03
【问题描述】:

我在这里要做的很简单...显示一个调查者 ID 和他对应的名字... 通过根据用户类型进行选择,可以从用户表中轻松完成此操作。 但是,我只想选择某些类型的调查员。这里的类比是调查员被分配到一个展览供他们调查。一名调查员最多只能分配到 3 个案例。现在在分配调查员期间,我想编写一个选择语句,该语句将仅检索已分配给少于或等于 2 个案例的调查员 ID。我已经包含了显示下面示例数据的展览和用户表。

现在我有一个想法,我必须首先从用户列表中按他们的 ID 挑选出所有调查员,然后通过删除分配给 3 个案例的调查表过滤他们,只留下那些两种情况。然后我使用这个 ID 来选择 Investigators 的名字。

最大的问题是我如何写声明?

【问题讨论】:

  • 你为什么用 C# 标签来标记它?您是在搜索 SQL 语句来执行此操作,还是在 C# 中搜索,例如LINQ 语句?
  • 我很难看到这里的外键关系,是“OfficerID”还是“InvestigatorID”将加入回用户表?
  • InvestigatorID 是唯一与底部表格中的条目匹配的一个。 (IO123)。
  • @Simon,你说得对,我错过了那个。而且由于他从未提及“官员”这个词,因此可以肯定地得出结论,那就是这种关系。那么克里斯的回答应该可以解决问题。

标签: c# database select sql


【解决方案1】:
SELECT InvestigatorID From Cases GROUP BY (InvestigatorId) HAVING COUNT(INvestigatorId) < 3

这就是你要找的吗?

【讨论】:

  • Splendid....对不起史蒂夫,如果我的问题模棱两可...亚当拉尔夫在 C# 应用程序中使用该语句,这就是为什么我也标记 C# 和西蒙..谢谢澄清......和克里斯......谢谢你的回答......我还没有尝试过,虽然我可以看到它的工作很干净......
猜你喜欢
  • 2012-09-06
  • 2010-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-19
  • 1970-01-01
  • 1970-01-01
  • 2011-11-03
相关资源
最近更新 更多