개발/DB
-
[Mysql] 순위 구하기 (limit, rank())개발/DB 2021. 11. 15. 16:46
1. limit 사용 order by 까지 한 후 row수를 설정해 출력한다. order by 까지 전부 로드 한 후 수행하기 때문에 성능에 신경써야 한다. (인덱스도 타지 않음) SELECT outs.animal_id, outs.name from animal_outs outs, animal_ins ins where outs.animal_id = ins.animal_id order by outs.datetime - ins.datetime desc limit 2 2. rank() 사용 rank()를 사용하여 정해진 조건에 따른 순위컬럼을 생성 그 순위컬럼을 사용하여 원하는 순위row만 출력 SELECT A.ANIMAL_ID ,A.NAME FROM ( SELECT A.ANIMAL_ID ,A.NAME ,RAN..