我正在使用一些继承的代码,并且无法解决以下问题:我希望能够通过多种条件搜索我们的清单数据库,其中包括硬件序列号和有关硬件的评论。然后,我想返回符合此搜索条件的清单中的硬件清单。SQL - 在数据库中找到多个实例时返回记录的第一个实例
我遇到的问题是,对于一个硬件可能有多个注释,所以当返回硬件列表时,我看到同一件的多个结果(因为加入了Events表)。我怎样才能为每个硬件显示一次记录,而不是每个硬件的多个记录?
下面是SQL查询的片段减去所有的如果包含语句搜索参数和这样的:
SELECT
UPPER(Hardware.HardwareSerialNumber) AS HardwareSerialNumber,
UPPER(Hardware.HardwareName) AS HardwareName,
Hardware.HardwareFirstDeploymentDate,
Hardware.HardwareActive,
Hardware.HardwareAccountNumber,
Hardware.BillingAccountNumber,
Hardware.LastUpdated,
Hardware.Comments,
Events.EventComments
FROM
Hardware
LEFT JOIN
Events
ON
Hardware.HardwareSerialNumber = Events.HardwareSerialNumber
WHERE 1=1
预先感谢您!
可能重复的[检索每个组中的最后一条记录](http://stackoverflow.com/questions/1313120/retrieving-the-last-record-in-each-group) – Bulat
取决于哪个'EventComment'你想展示。一个选项,删除连接并使用相关的子查询;另一种选择,聚合;另一个选项,窗口函数与子查询。取决于... – sgeddes
我没有提及,我希望能够基于EventComments列进行搜索。我已经尝试了select中的子查询,并且能够为每个硬件返回一个结果,但我无法在子查询中使用搜索参数。 –