sql每组最大
A. sql查询 分组后 每组某字段值最大的一行所有列
create
table
#a(address
char(2),fenshu
varchar(8))
insert
into
#a
values
('a1','s1')
insert
into
#a
values
('a1','s2')
insert
into
#a
values
('a2','s3')
insert
into
#a
values
('a1','s7')
insert
into
#a
values
('a2','s4')
insert
into
#a
values
('a2','s8')
insert
into
#a
values
('a1','s8')
insert
into
#a
values
('a2','s9')
实际语法测试
应该加上
分组条件区别,否则会有重复记录被取出(a.address
=
b.address)
select
*
from
#a
a
where
fenshu
in
(
select
max(
fenshu)
from
#a
b
where
a.address
=
b.address
group
by
address)
B. sql 分组后求每组中的最大值对应的那条数据
select A,C,(select B from T t where t.A = K.A AND t.C = K.C) B
from( select t.A A,max(t.C) C from T tgroup by T.A) K
C. sql语言 怎么求每组最大,就是用group by 分组后,求每组某列最大
select
max(列名)
as
[最大……]
//[最大……]
这个是指你自己可以命名的
from
[表名]
group
by
[列名]
D. sql 分组 求出每组最大的数据有几条
--创建数据
createtableT([name]varchar(20),[value]int);
insertintoT
select'A',1
union
select'A',2
union
select'B',1
--查询分组后每组中最大的数据有多少条
selecta.n,count(*)from
(select[name]n,max([value])mvfromTgroupby[name])a
innerjoinTbona.n=b.[name]anda.mv=b.[value]
groupbya.n
楼主试试行不行
E. sql语句按照两个字段分组然后查询出每一组中的最大值。
select a,b,max(c) c
from tab
group by a,b
F. sql按字段分组,排序,并且找出每组最大的数据
select [序号],[名称],max([号码]) from table
group by [名称] ,[序号]
G. SQL查询取分组最大值
selectt1.分类,t1.商品名称,table.库存,t1.更新时间
from (
select 分类,商品名称,max(更新时间) 更新时间 from table
group by 分类,商品名称
) t1
inner join table on t1.分类=table.分类 and t1.商品名称=table.商品名称 and t1.更新时间
=table.更新时间
(7)sql每组最大扩展阅读:
关于SQL最大值查询语句的记录
SELECT
bsnum,
STATE AS FILE_STATE
FROM
FILE_RECORD r
WHERE
STATE =(
SELECT
MAX(STATE)
FROM
FILE_RECORD
WHERE
bsnum = r.bsnum
);
小技巧:有时需要测试sql语法但又觉得创建表麻烦,可以使用创建一个临时表,如下:
select id, count(t.id) from
(
select 1 as id, 2 as age, 'F' as sex from al union
select 2 as id, 2 as age, 'M' as sex from al union
select 3 as id, 3 as age, 'F' as sex from al union
select 4 as id, 4 as age, 'M' as sex from al
)t
H. sql 插入分组的最大值
你好~
可能你讲的不是太清晰,你看下这样是否可以:
select * from (
select *, row_number() over(PARTITION BY A order by A Desc)as num from
t1
)T
where num=1
根据A作倒序排序,之后,取你讲的最后一条记录。
这个查询就是得到你第一问的结果。
I. sql如何求分组计数之后计数的最大值
插入测试记录:
[sql] view plain
insertintostudentsvalues('数学','Jack','Tianjin',80)
insertintostudentsvalues('数学','Jordan','Tianjin',80)
insertintostudentsvalues('数学','James','Beijing',55)
insertintostudentsvalues('英语','Jack','Tianjin',90)
insertintostudentsvalues('英语','Jordan','Tianjin',60)
insertintostudentsvalues('英语','James','Beijing',100)
insertintostudentsvalues('语文','Jack','Tianjin',60)
insertintostudentsvalues('语文','Tom','Tianjin',77)
insertintostudentsvalues('语文','Jordan','Tianjin',68)
想要抓取每个科目第一名的整条信息,可以使用Row_number()函数:
select*
from(
selectcourse,stu_name,city,score,ROW_NUMBER()over()asrn
fromstudents
)a
wherea.rn<=1;