假设我有一个SQL数据库,其中列可能看起来像这样
Numbers
-------
1
1
2
3
4
4
是否可以创建一个简单地抓取最大数字的SQL查询,在这种情况下是4
?或者我是否必须查询每个数字,将它们放在外部程序中的某种列表中,并编写算法以找到最大的数字?
答案 0 :(得分:9)
使用可以使用MAX Aggregate功能。由于您的表只有一列,它看起来像
SELECT MAX(NUMBERS) n from yourtable
取决于你的后端,你也可以放入一个变量。例如,在SQL Server中
Declare @TheMax int
SELECT @TheMax = MAX(NUMBERS)
FROM yourTable
data.stackexchange.com上的
如果你还想要Max Per somthing,你需要一个小组
例如,Data.SE上的这个query给出了每个标签的最高分数
SELECT
tagname, max(score)
FROM
posts p
INNER JOIN postTags pt
ON p.id = pt.postId
INNER JOIN tags t
ON pt.tagid = t.id
GROUP BY
tagname
答案 1 :(得分:5)
当x
是你的专栏名称时:
SELECT MAX(x) FROM numbers
答案 2 :(得分:1)
这应该适用于大多数SQL服务器。
Select Max(Number) From Table