众数指一组数据中出现次数最多的数据。

解决方案 »

  1.   

    select * from table1 where colname = select column from (select colname from (select column, count(1) rn from table1) order by rn) where rn = 1
      

  2.   

    晕,不太明白。
    我的表名是:CM_R10,要求的众数列是:MARK
      

  3.   

    --测试目标:取出现次数最多的数
    --测试表:
    CREATE TABLE t_test AS SELECT LEVEL n,LEVEL*0.4 m  FROM dual CONNECT BY LEVEL < 1000000;
    INSERT /*+ append*/INTO t_test SELECT LEVEL n,LEVEL*0.8 m  FROM dual CONNECT BY LEVEL < 1000000;
    INSERT INTO t_test VALUES (100,101);
    COMMIT; 
    --方法一:                    
    SELECT *
    FROM   t_test
    WHERE  n IN
           (SELECT MAX(n) keep(dense_rank FIRST ORDER BY cnt DESC)
            FROM   (SELECT n, COUNT(*) cnt FROM t_test GROUP BY n));
    --方法二:        
    SELECT *
    FROM   t_test
    WHERE  n IN
           (SELECT n
            FROM   (SELECT n, COUNT(*) cnt FROM t_test GROUP BY n ORDER BY cnt DESC) WHERE ROWNUM = 1);
      

  4.   

    楼主把你的表名和重数名替换下就可以了:t_test => CM_R10,n => MARK