① sql怎么取得一个列中前几个最大值
首先,需要知道自增id的字段名字,然后就跟楼上说的一样了。比如字段名叫 sid,那么就是 select max(sid) from 表名
② SQL语句求解,按照讨论版id出现的频率从高到低排列出来,并取出最高的前五个值
--讨论版id出现的频率从高到低排列出来
select b.id,b.board_name,count(*) as tie_num from bbs_tie a,board b where a.board_id=b.id group by b.id,b.board_name order by count(*) desc
--讨论版id出现的频率从高到低取前五个
select top 5 b.id,b.board_name,count(*) as tie_num from bbs_tie a,board b where a.board_id=b.id group by b.id,b.board_name order by count(*) desc
以上是在sqlserver中的写法
另外表述的有些地方不是很清楚,像类别什么的。。。
③ sql server 2005 查找并统计前5名数量最多的类型
SELECT top 5 aType,count(*) as numbers FROM Articles
where aType in(6,7,8,9,10)
group by aType
order by numbers DESC
④ sql语句 group by 分组后按正序排序 只取数量最多的前五 剩下的分成一组
如果是Oracle可以用rownum,如果是MySQL可以用limit限制输出条数
eg:select *from tablename t where t.age<45 [group by..] order by age DESC limit 5
或select *from tablename t where t.age<45 and rownum<6 [group by..] order by age DESC
⑤ SQL查询出前5个及前面20%的教师信息
你这题目没太看懂,前5个是指排名前五个,还是说按什么分类查前五个
这前五个有很多种:比如入职时间的前五个,工资排名的前五个等等
建议说得详细一点。
你可以按照rowid进行降序排序,然后条件里写上rowid<=5即可取出前五个
或者要是按工资排名的话就对工资的列进行排序,以此类推。。
⑥ 统计sql数据库中发信息量最多的用户
select top 5 用户ID,count(*) ACount from 表 group by 用户ID order by ACount
⑦ sql 分组查询前5的记录
用GROUP
BY查询。
select
Top
5
班级,学号,分数
From
学生表
group
by
班级,学号,分数________________________
Top
5表示头5行数据。
也可以用百分百表示
如果你的表中有100行数据,要查5行,则用select
top
5percent
班级,学号,分数from
学生表
group
by
班级,学号,分数