oracle的rownum与having用法 去除重复 在重复情况用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

这样就可以了。

时间: 2024-10-18 13:50:23

oracle的rownum与having用法 去除重复 在重复情况用rownum的相关文章

JS简单去除数组中重复项的方法_javascript技巧

本文实例讲述了JS简单去除数组中重复项的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script> var arr = ["aaa","bb

去除数组中重复的项

数组|重复 <% '======================================'作者:阿里西西'时间:2005.12.20'作用:去除数组中重复的项'======================================Function MoveR(Rstr) Dim i,SpStr SpStr = Split(Rstr,",") For i = 0 To Ubound(Spstr)  If I = 0 then   MoveR = MoveR &

c语言-关于去除数组中重复元素的问题

问题描述 关于去除数组中重复元素的问题 源代码:#include #include int main() { int *a; int n,i,j; scanf("%d",n); a=(int *)malloc(n*sizeof(int)); for (i=0;i<n;i++) scanf("%d",&a[i]); for (i=0;i<n;i++) for (j=1;j<n;j++) if (a[i]==a[j]) printf (&quo

运用javascript如何去除数组中重复的数字或者字符串?

问题描述 运用javascript如何去除数组中重复的数字或者字符串? 运用javascript如何去除数组中重复的数字或者字符串?谢谢了.方法越多越好,谢谢. 解决方案 JavaScript实现数组去除重复整理 javascript 去除数组中重复项的几种方法 解决方案二: 本人只会用JAVA写

PHP去除数组中重复的元素并按键名排序函数_php技巧

1.此函数的作用:去除数组中重复的元素并按键名排序 function assoc_unique($arr, $key) { $tmp_arr = array(); foreach($arr as $k => $v) { if(in_array($v[$key], $tmp_arr)) { unset($arr[$k]); } else { $tmp_arr[] = $v[$key]; } } sort($arr); return $arr; } 使用例子: $aa = array( array(

Python去除列表中重复元素的方法_python

本文实例讲述了Python去除列表中重复元素的方法.分享给大家供大家参考.具体如下: 比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print l2 还有一种据说速度更快的,没测试过两者的速度差别 l1 = ['b','c','d','b','c','a','a'] l2 = {}.fromkeys(l1).keys() print l2 这两种都有个缺点,祛除重复元素后排序变了: ['a', 'c',

JavaScript去除数组里重复值的方法_javascript技巧

本文实例讲述了JavaScript去除数组里重复值的方法.分享给大家供大家参考.具体如下: var unique = function(origArr) { var newArr = [], origLen = origArr.length, found, x, y; for ( x = 0; x < origLen; x++ ) { found = undefined; for ( y = 0; y < newArr.length; y++ ) { if ( origArr[x] === n

C# 去除数组中重复的元素简单代码

例子  代码如下 复制代码 string[] stringArray = { "aaa", "bbb", "aaa", "ccc", "bbb", "ddd", "ccc", "aaa", "bbb", "ddd" }; //List用于存储从数组里取出来的不相同的元素 List>string>

去除DataTable中重复字段

      #region  去除datatable中重复字段        /// <summary>        /// </summary>        /// <param name="SourceTable"></param>        /// <param name="FieldNames"></param>        /// <returns></re