[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]