oracle的rownum与having用法 去除重复 在重复情况用rownum

简介: 一般来说,大家会用rownum,也就是伪列来指定要显示多条数据, 比如 select linename from aced where rownum

一般来说,大家会用rownum,也就是伪列来指定要显示多条数据,

比如

select linename from aced  where rownum<3 

但是,大家注意,如果取出来的数据有重复数据,用rownum是达不了你要的效果的。比如你要取5条数据,其中四条是重复,那你最后只能得到两条。


那该肿么办呢,解决办法如下:


SELECT
*
FROM
(
SELECT
PROJECT_LISTING.VARIETY_NAME
FROM
PROJECT_LISTING
WHERE
PROJECT_LISTING.VARIETY_NAME IS NOT NULL
GROUP BY
PROJECT_LISTING.VARIETY_NAME
HAVING
COUNT (*) = 1

)
WHERE
ROWNUM <= 5


这样就可以了。

目录
相关文章
|
7月前
|
Oracle 关系型数据库 数据库
Oracle中merge Into的用法
Oracle中merge Into的用法
|
1月前
|
SQL 移动开发 Oracle
[Oracle]面试官:你说说rownum、currval与nextval分别是什么,还有没有其他的?
本文主要介绍了 Oracle 数据库中的 `rownum` 虚拟字段和 `nextval`、`currval` 伪列。`rownum` 用于生成结果集的序号,常用于 `top-n` 查询。`nextval` 和 `currval` 基于序列,分别表示序列的下一个值和当前值,常用于主键的自动填充。文中提供了详细的示例和注意事项,帮助读者更好地理解和使用这些功能。
54 1
[Oracle]面试官:你说说rownum、currval与nextval分别是什么,还有没有其他的?
|
2月前
|
SQL 存储 Oracle
Oracle用法
【10月更文挑战第15天】Oracle用法
42 5
|
7月前
|
SQL 存储 Oracle
一篇文章带你学会 Oracle 存储过程的基本介绍和高阶用法(上)
一篇文章带你学会 Oracle 存储过程的基本介绍和高阶用法
|
5月前
|
Oracle 关系型数据库 Java
Oracle数据库导入工具IMP详解与用法
Oracle数据库导入工具IMP详解与用法
|
6月前
|
Oracle 关系型数据库 Java
Oracle数据库导入工具IMP详解与用法
Oracle数据库导入工具IMP详解与用法
|
7月前
|
SQL 存储 Oracle
一篇文章带你学会 Oracle 存储过程的基本介绍和高阶用法(下)
一篇文章带你学会 Oracle 存储过程的基本介绍和高阶用法
|
Oracle 关系型数据库
Oracle中decode 以及ROW_NUMBER() OVER() 函数等其它相关函数用法
Oracle中decode 以及ROW_NUMBER() OVER() 函数等其它相关函数用法
140 0
|
7月前
|
SQL 移动开发 Oracle
避坑,Oracle中rownum与order by的执行顺序
避坑,Oracle中rownum与order by的执行顺序
|
7月前
|
SQL Oracle 关系型数据库
Oracle之CASE-WHEN、ROWNUM
Oracle之CASE-WHEN、ROWNUM
176 0