SQL 返回唯一行[重复]

问题描述 投票:0回答:1

我正在尝试针对 SQL Server 中的表编写查询,我只想返回唯一的行。该表包含 ItemId、Dept 和 ItemCount。问题是过滤 ItemCount,其中值在 1000 到 8000 之间。这样就可以了!问题是,虽然需要所有三列,但只需要返回一个部门名称。换句话说,如果部门 A 具有 ItemId 1234 和 ItemId 5678 以及 ItemCount 801 和 ItemCount 7654,则只需要返回这些行之一。哪一个并不重要。

因此,我尝试使用子查询返回 1000 到 8000 之间的行,然后在其余行上使用不同的查询。

如何过滤掉,以便只看到 A、B 和 C 三个部门?

sql sql-server
1个回答
0
投票

你的问题问得很不好,但这需要时间。提供您所拥有的以及您期望从中得到的样本数据也更好。

现在你问,根据我的解释,你可能有 100 个项目的计数在所讨论的范围内。为什么你只想要 1,尤其是跨不同项目甚至不同部门时。

无论如何,我认为您可能正在寻找的是仅返回 1 行的 TOP 命令,并且您不关心它是什么行,只要它符合您的标准即可。

Select top 1 
      YT.*
   from 
      YourTable YT
   where
          YT.ItemCount >= 1000
      AND YT.ItemCount <= 8000

因此,这将根据条件返回“YourTable”中的所有列。一旦找到第一个限定符,这就是你得到的。

我建议通过编辑您现有的已发布问题提供更多详细信息,然后让我(或将来的任何人)进行更新,而不是尝试在评论行中回复可能冗长的内容,从而进行更多澄清。

© www.soinside.com 2019 - 2024. All rights reserved.