請問 在 急讲较 : 请问 在SQL中 怎样找出一列 数字的最大值, 和 最小值

时间:2021-09-13 15:14:42

请问 在SQL中 怎样找出一列 数字的最大值, 和 最小值
例如  , table 中数据为
名称   序号    数值
A     1        100 
A     2        200 
A     3        300

我想得到的是:  最大值   A, 3, 300
              最小值   A, 1, 100
改如何来写?

9 个解决方案

#1


select * from (select top 1 '最大值',* from 表 order by 数值 desc) a
union all
select * from (select top 1 '最小值',* from 表 order by 数值) a

#2


聚合函数
Microsoft SQL Server 2000 Analysis Services 提供下面的聚合函数以便在度量值中使用。

聚合函数 返回值 
Sum 输入值之和。 
Min 最小输入值。 
Max 最大输入值。 
Count 输入值的数目。 
Distinct Count 不重复的输入值的数目。 

#3


select * from [table] where 数值=(select max(数值) from [table])or 数值=(select min(数值) from [table])

#4


1.
select * from 表 where 序号 = 
(select max(a.序号) from 表 a where a.名称 = 名称)
union all
select * from 表 where 序号 = 
(select min(a.序号) from 表 a where a.名称 = 名称)

2. 
select top 1 * from 表 where 名称 = 'A'
order by 序号 desc
union all
select top 1 * from 表 where 名称 = 'A'
order by 序号 asc

#5


select max(数值) 最大值 from 表名 order by 数值
select min(数值) 最小值 from 表名 order by 数值

#6


select * from (select top 1 '最大值' as 取值类别,* from 表 order by 数值 desc) a
union 
select top 1 '最小值',* from 表 order by 数值

#7


select * from (select top 1 * from table8 order by 数值 desc ) a
union all
select * from (select top 1 * from table8 order by 数值) b

#8


select fld1,fld2,max(fld3) from tableA 
union 
select fld1,fld2,min(fld3) from tableA

#9


select fld1,fld2,max(fld3) as fld3 from tableA 
union 
select fld1,fld2,min(fld3) as fld3 from tableA

#1


select * from (select top 1 '最大值',* from 表 order by 数值 desc) a
union all
select * from (select top 1 '最小值',* from 表 order by 数值) a

#2


聚合函数
Microsoft SQL Server 2000 Analysis Services 提供下面的聚合函数以便在度量值中使用。

聚合函数 返回值 
Sum 输入值之和。 
Min 最小输入值。 
Max 最大输入值。 
Count 输入值的数目。 
Distinct Count 不重复的输入值的数目。 

#3


select * from [table] where 数值=(select max(数值) from [table])or 数值=(select min(数值) from [table])

#4


1.
select * from 表 where 序号 = 
(select max(a.序号) from 表 a where a.名称 = 名称)
union all
select * from 表 where 序号 = 
(select min(a.序号) from 表 a where a.名称 = 名称)

2. 
select top 1 * from 表 where 名称 = 'A'
order by 序号 desc
union all
select top 1 * from 表 where 名称 = 'A'
order by 序号 asc

#5


select max(数值) 最大值 from 表名 order by 数值
select min(数值) 最小值 from 表名 order by 数值

#6


select * from (select top 1 '最大值' as 取值类别,* from 表 order by 数值 desc) a
union 
select top 1 '最小值',* from 表 order by 数值

#7


select * from (select top 1 * from table8 order by 数值 desc ) a
union all
select * from (select top 1 * from table8 order by 数值) b

#8


select fld1,fld2,max(fld3) from tableA 
union 
select fld1,fld2,min(fld3) from tableA

#9


select fld1,fld2,max(fld3) as fld3 from tableA 
union 
select fld1,fld2,min(fld3) as fld3 from tableA