我这里是查询了其中一半的数据,但是不能通过2次查询取得另一半数据,因为2次查询数据都是随机排序的,不能保证后面一次查询是另一半。 要查另一半数据可以先执行查询:SELECT * FROM (SELECT t.*, NTILE(2) OVER(ORDER BY dbms_random.VALUE) tmpcol FROM t) ,把结果存在游标或dataset中,然后取tmpcol 为1的就是其中一半,tmpcol为2的是另外一半,分析函数NTILE(2)就是把数据均匀的分成2个组,如果是NTILE(3)就是分3个组