하루에 0.01%라도 성장하자
반응형

2022/01 11

SQL - 여러개의 로우 중 랜덤하게 로우를 가져오는 방법

최근에 본의아니게 SQL을 가지고 열심히 씨름중인데.. 이번에 랜덤하게 row를 가져와서 사용할 일이 생겼다.. 5만개 조금 넘어가는 row 였는데, 다른 블로그에서 가이드 준 대로 진행하보니 뭔가 문제가 있어 보였다. SELECT * FROM TEST ORDER BY RAND() LIMIT 10 먼저 TEST 라는 테이블에서 랜덤한 로우를 10개 가져오는 것인데, 위 쿼리로 하게되면 엄청나게 시간이 오래 걸린다.. 물론 위에는 내가 TEST로 썼지만, 실제 업무용 테이블은 텍스트가 많아서 그런지 더 그랬고.. 실제로 15초 이상이 걸렸다. 해당 문제는 단순하게 * 이 아니라 특정 컬럼을 하나 지정하면 바로 수정되긴 하더라.. 아마 텍스트가 엄청 나게 많았던 컬럼 때문에 그런거 같은 느낌.. SELECT..

Develop/Database 2022.01.12
반응형