mysql 가중치에 의한 랜덤선택 > IT 기술백서

IT 기술백서

직접 알아내거나 검색하기 귀찮아서 모아 둔 것

DB | mysql 가중치에 의한 랜덤선택

본문

[code]

SELECT * FROM test ORDER BY RAND() * 100 + weight LIMIT 1

[/code]

weight 는 가중치가 들어있는 필드 이름

 

아래는 sqlalchemy 로 해봤는데 몰라서 text 로 raw쿼리 이용했음 ㅜㅜ

[code]

test = db.session.query(Test).order_by(desc(text('RAND() * 100 + weight'))).first()

[/code] 

댓글 0개

등록된 댓글이 없습니다.

Menu