랜덤으로 불러와서 상위 몇개의 값을 가져오는 쿼리입니다.
select a.EVNT_NM, b.SER_NO, b.EVNT_NO, b.PTPE_NM, b.PS_NO, b.HP_NO, b.EML_AD, DATE(b.PTC_DH) AS PTCDH from CCD_EVNT a, CCD_EVNT_PTPE b
where a.SER_NO = b.EVNT_NO
and b.EVNT_NO=?
order by rand() DESC
fetch first 2 rows only
문제는 fetch first 2 rows only 부분에 있습니다.
숫자 2가 정해져 있는 것이 아니라 가변입니다. 그래서 ? 으로 했는데 쿼리에러가 나더군요...
또 아직 내공 부족인지라...위처럼 하면 되는 것을 rownumber 를 사용해서 했는데 쿼리가 너무 길어져서요..
님들의 힌트 및 답을 기다립니다.
|