나눔 게시판의 주사위 알고리즘을 안내 드립니다.

조회 수 5723 추천 수 1
첨부1
주사위.png

나눔 게시판에 글을 쓰면 주사위 기능이 보입니다.

이 주사위 기능이 어떻게 추첨되는지 알고리즘을 공개합니다.

  1. 추천
    SELECT member_srl
    FROM %sdocument_voted_log
    WHERE document_srl = %d # 글 번호
    AND point > 0
    ORDER BY RAND()
    LIMIT 1;
  2. 댓글
    SELECT member_srl
    FROM %scomments
    WHERE document_srl = %d # 글 번호
    AND member_srl NOT IN (%d,%d) # 작성자, 트레디아_봇 아이디 제외
    GROUP BY member_srl
    ORDER BY RAND()
    LIMIT 1;
  3. 추천+댓글
    SELECT voted_log.member_srl member_srl
    FROM %sdocument_voted_log voted_log
    INNER JOIN %scomments comments
    ON comments.document_srl = voted_log.document_srl
    AND comments.member_srl = voted_log.member_srl
    WHERE voted_log.document_srl = %d # 글 번호
    AND voted_log.point > 0
    GROUP BY member_srl
    ORDER BY RAND() LIMIT 1;

이 공지를 쓰기 좀 전에 주사위 알고리즘에 오류가 있다는 건의를 받았습니다.

확인해보니 실제로 오류가 있었습니다.

그래서 알고리즘에 GROUP BY member_srl 를 붙이고 관련 문제가 해결된 것을 확인했습니다.

 

개선할 부분을 알려주신다면 가능한 반영토록 하겠습니다.

감사합니다.

트디개발자

번호 제목 글쓴이 날짜 조회
공지 우녕자 2014.12.12 1649
공지 뮤리아 2020.10.16 200550
75 트디개발자 2022.05.25 5180
74 트디개발자 2022.05.21 5720
73 트디개발자 2022.04.24 5776
72 트디개발자 2022.03.04 6045
71 트디개발자 2022.02.28 5727
70 트디개발자 2022.02.12 5719
> 트디개발자 2022.02.10 5723
68 트디개발자 2022.01.23 3041
67 트디개발자 2022.01.14 172
66 트디개발자 2022.01.10 184
65 트디개발자 2021.12.25 2167
64 트디개발자 2021.12.05 244
63 트디개발자 2021.11.26 181
62 트디개발자 2021.09.29 657
61 트디개발자 2021.09.19 244
60 트디개발자 2021.09.17 302
59 트디개발자 2021.08.30 189
58 트디개발자 2021.08.28 155
57 트디개발자 2021.08.21 250
56 트디개발자 2021.08.11 220