CREATE SEQUENCE tmp_id INCREMENT BY 1 START WITH 1 MAXVALUE 9999999 NOCYCLE NOCACHE;
CREATE TABLE tmp_1 AS SELECT tmp_id.NEXTVAL AS id, email, mobileno FROM target_table WHERE conditions;
-- 取得最大 id
SELECT MAX(id) FROM tmp_1;
DECLARE
v_max_id NUMBER;
v_rand_id NUMBER;
v_email VARCHAR2(100);
BEGIN
SELECT MAX(id) INTO v_max_id FROM tmp_1;
-- 產生 10 筆不重複隨機 id
FOR i IN 1..10 LOOP
v_rand_id := TRUNC(DBMS_RANDOM.VALUE(1, v_max_id+1));
SELECT email INTO v_email FROM tmp_1 WHERE id = v_rand_id;
DBMS_OUTPUT.PUT_LINE(v_email);
END LOOP;
END;
/