SELECT num FROM (SELECT num, COUNT() AS factors FROM (SELECT num, level FROM (SELECT 2 num FROM dual UNION ALL SELECT level FROM dual CONNECT BY LEVEL <= :n) WHERE level <= SQRT(num) CONNECT BY LEVEL <= level) GROUP BY num HAVING COUNT()<=1) WHERE num<=:n;
其中,:n是指定的数值,该查询将返回小于或等于该数的所有质数。