본문 바로가기

기술관련/초짜DBA

레코드를 랜덤하게 가져오기

http://blog.naver.com/flydrago 님의 블로그 에서 담아 왔습니다.
랜덤 select 쿼리라는게 뭘 말하시는건지

아래 문장은 all_objects 에서 임의의 30% row를 리턴해 줍니다.



select * from all_objects sample(30)







MOD함수를 사용해서



SELECT ABS(MOD(DBMS_RANDOM.RANDOM, 26)) + 65
FROM dual



이렇게 하면 되지 않을까요?

원하시는 답인지 모르겠네요.





******************************

select *

from ( select a.empno, a.ename,b.deptno

from emp a,dept b

where a.deptno = b.deptno

and a.ename like '%'

order by dbms_random.value )

where rownum <= 4





*************************************************

select * from emp sample(1); 1%이내



select * from emp sample(1)

where rownum <= 5;

1%이내에서 5개만가져오기

그외 패키지이용방법등이 있습니다.



MSSQL Version

SELECT top 10 * from authors order by NewID()

MySQL Version

'기술관련 > 초짜DBA' 카테고리의 다른 글

MS-SQL에서 Oracle로 데이터 복제 사용시 발생되는 오류  (0) 2006.12.18
oracle tip  (0) 2006.11.02
exp/imp  (0) 2006.08.02
DB Link 관련  (0) 2006.07.26
Select Insert Select Create  (0) 2006.07.03