oracle 选取出现次数最多的前5条数据

SELECT
	*
FROM
	(
		SELECT
			PROJECT_LISTING.MATERIAL,
			COUNT (*) AS "出现次数"
		FROM
			PROJECT_LISTING
		WHERE
			PROJECT_LISTING.MATERIAL IS NOT NULL
		GROUP BY
			PROJECT_LISTING.MATERIAL
		ORDER BY
			COUNT (*) DESC
	) WHERE ROWNUM <= 5


	ORDER BY
			COUNT (*) DESC 是关键排序

COUNT (*) AS "出现次数"  这个可以不写,只是为了看的明白
时间: 2024-09-25 23:45:48

oracle 选取出现次数最多的前5条数据的相关文章

oracle left join 后怎么取前10条数据?

问题描述 oracle left join 后怎么取前10条数据? 如题 oracle left join 后怎么取前10条数据? 求大神帮帮忙,谢谢了 解决方案 where rownum <= 10 解决方案二: ORACLE取前10条数据Oracle获取前10条数据Oracle查询前10条数据 解决方案三: 直接select top10 * from a表 left join b表 on --; 解决方案四: select * from (select ROWNUM as num,A.* f

网络口碑排行黑榜敷衍次数最多的前两名

由http://www.aliyun.com/zixun/aggregation/445.html">成都全搜索新闻网根据权威数据发布平台的网络数据,整理发布的2011年度(中期)成都楼盘网络诚信榜.这是成都市第一个针对本地房地产企业网络诚信度评价的榜单,供有关部门和消费者参考.保利花园.保利心语花园双双上榜,名列被投诉次数最多楼盘(黑榜)前两名,同时也是网络口碑排行黑榜敷衍次数最多的前两名.

php fopen从100万条记录的文本文件取出重复数最多的前10条

100万条记录的文本文件,取出重复数最多的前10条.   示例文本:   098123234789--234678654123 $fp = fopen('文件', 'r'); while($buf = fgets($fp)) {   $res[$buf]++; } fclose($fp); arsort($res); $res = array_keys(array_slice($res, 0, 10)); print_r($res); $a = file('文件'); $res = array_

oracle数据库中怎么一次性插入10万条数据

问题描述 oracle数据库中怎么一次性插入10万条数据 oracle数据库中怎么一次性插入10万条数据?急用!!!1 解决方案 最快的方法是用imp进行导入 或者用sql执行也可以(insert into )

Oracle查询一个表中的几万条数据,不用or,优化的方法还有什么呢

问题描述 Oracle查询一个表中的几万条数据,不用or,优化的方法还有什么呢 如:name numbers a 22 b 33 c 44 d 55 . . . 查询a.b.d的详细信息,不用or in之类的 解决方案 用 EXISTS ........

asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)_实用技巧

本文实例总结了asp.net DataTable相关操作.分享给大家供大家参考,具体如下: #region DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// <summary> /// DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// eg:SortExprDataTable(dt,"Sex='男'","Time Desc&quo

php 利用array_slice函数获取随机数组或前几条数据_php实例

先给大家说下基本语法: array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] ) array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列.  如果 offset 非负,则序列将从 array 中的此偏移量开始.如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始.  如果给出了 length 并且为正,则序

mysql/Oracle/mssql取前几条数据sql写法

如在ms sqlserver 用此语句:  代码如下 复制代码 select top 2 * from test01 Oracle的语句:  代码如下 复制代码 select * from (select rownum r ,* from test) ttwhere tt.r > 50 and tt.r <= 100; (最好用PLSQL游标来解决) DB2中:  代码如下 复制代码 select * from payment fetch first 5 row only --查前5条记录 

mysql中同时查两个表中的前2000条

问题描述 mysql中同时查两个表中的前2000条 比方说我有两个结构一样的表,但是由于各种原因并不能合并. 其中有一个create_time 字段记录了时间 我想同时查出两个表中时间大于某个时间(例:2016-04-01 00:00:00)的前2000条数据 要求是查出来一共2000条,而不是每个表查2000条出来. 求大神!谢谢! 解决方案 SELECT CREATE_TIME FROM (SELECT 字段1,字段2 from 表1 where create_time>某个时间 union