如何从 sql 中的 table 中获取最小值
How to get least value from table in sql
我正在从 table 获得最高值和最低值,table 接受空值 also.i 我能够获得最高值但不能获得最低值。
这是我的 table 数据:
PostBidId UserId PostId BidAmount
-------------------------------------------------
1691 159 1239
1684 147 1239 100000000000000
1683 147 1239 12345666666
1680 147 1239 6777777
1682 147 1239 900
1681 147 1239 90000000
我的最高值是 100000000000000
,最低值 id 900
。
这是我的代码:
SELECT TOP(1)
BidAmount AS HighestBid, '0' AS LowestBid
FROM
[dbo].[Bids]
WHERE
PostId = 1239 AND BidAmount != ''
ORDER BY
BidAmount ASC
输出为:100000000000000
SELECT
MIN (BidAmount) AS LowestBid, '0' AS HighestBid
FROM
[dbo].[Bids]
WHERE
PostId = 1239 AND BidAmount != ''
输出是:100000000000000
,我期望的是:900
。
SELECT MIN (CAST (BidAmount as bigint)) AS LowestBid, '0' AS HighestBid
FROM [dbo].[Bids]
WHERE PostId = 1239 AND BidAmount != ''
我正在从 table 获得最高值和最低值,table 接受空值 also.i 我能够获得最高值但不能获得最低值。
这是我的 table 数据:
PostBidId UserId PostId BidAmount
-------------------------------------------------
1691 159 1239
1684 147 1239 100000000000000
1683 147 1239 12345666666
1680 147 1239 6777777
1682 147 1239 900
1681 147 1239 90000000
我的最高值是 100000000000000
,最低值 id 900
。
这是我的代码:
SELECT TOP(1)
BidAmount AS HighestBid, '0' AS LowestBid
FROM
[dbo].[Bids]
WHERE
PostId = 1239 AND BidAmount != ''
ORDER BY
BidAmount ASC
输出为:100000000000000
SELECT
MIN (BidAmount) AS LowestBid, '0' AS HighestBid
FROM
[dbo].[Bids]
WHERE
PostId = 1239 AND BidAmount != ''
输出是:100000000000000
,我期望的是:900
。
SELECT MIN (CAST (BidAmount as bigint)) AS LowestBid, '0' AS HighestBid
FROM [dbo].[Bids]
WHERE PostId = 1239 AND BidAmount != ''