Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL语句,仅选择其中一列中包含最大值的行_Sql_Sql Server_Tsql - Fatal编程技术网

SQL语句,仅选择其中一列中包含最大值的行

SQL语句,仅选择其中一列中包含最大值的行,sql,sql-server,tsql,Sql,Sql Server,Tsql,我有下表: select * from [Auction].[dbo].[Bids] 我需要选择具有最高BidValue的行。当我这样做的时候 SELECT bids.itemId, max(bids.[bidValue]) as HighestBid FROM [Auction].[dbo].[Bids] bids WHERE bids.itemId = 2 GROUP BY bids.itemId 我得到了正确的一行: 。。。但是当我添加另外两个字段时,它不起作用(我知道它显示了3行

我有下表:

select * from [Auction].[dbo].[Bids]


我需要选择具有最高BidValue的行。当我这样做的时候

SELECT bids.itemId, max(bids.[bidValue]) as HighestBid
FROM [Auction].[dbo].[Bids] bids
WHERE bids.itemId = 2
GROUP BY bids.itemId
我得到了正确的一行:

。。。但是当我添加另外两个字段时,它不起作用(我知道它显示了3行,因为Group by,但是如果我没有将这些字段包括在Group by中,它会抛出一个错误):

所以,我需要它显示一行,其中包含itemId、HighestBid、submittedBy和submittedOn

感谢您的帮助

您只需执行以下操作:

select TOP 1 * from Bids where ItemId = 2 order by BidValue desc
试试这个

select top 1 * from Bids order by BidValue desc

如果超过一个最高值,则使用

select TOP (1) with ties * 
from Bids where ItemId = 2 order by BidValue desc

什么数据库管理系统?SQL Server?为同一个bidvalue但第一个出价的答案添加更多内容(重复出价场景-极不可能)。从[Auction].[dbo].[Bids]Bids中选择*,其中Bids.itemId=2 ORDER BY BidValue Desc,SubmittedOn这不会产生@kate想要的结果。。您应该为项目添加where子句,否则它将为您提供所有项目中的最高出价。“我需要选择具有最高出价值的行”-未提及项目ID:)
select TOP (1) with ties * 
from Bids where ItemId = 2 order by BidValue desc