내 보드가 다른 새 스레드가 생성되거나 다른 스레드에서 응답이 만들어 질 때까지 새 스레드가 맨 위에 표시되는 순서로 스레드를 정렬하길 원합니다. 이 경우 스레드가 1에서 2 등으로 내려갑니다.답글과 날짜별로 날짜순 정렬
그러나 지금 사용하고있는 코드는 다음과 같습니다. 새 스레드가 생성되면 하단에 표시되지만 회신을하면 맨 위로 이동합니다. 그래서 고쳐야 할 필요가있는 것은 맨 위에 만들어진 최신 스레드를 보여주는 것입니다.
SELECT b.id, b.name, b.subject, b.maintext, b.ip, b.date, b.img, b.replycount, MAX(r.date)
FROM
board b
LEFT JOIN reply r ON r.id = b.id
GROUP BY b.id, b.date
ORDER BY GREATEST(b.date, MAX(r.date)) DESC
LIMIT 50;
당신이 당신의 질문을 편집 할 수 있습니다 당신이 너무 업데이트에 대한 관심이 경우
(그래서 b.date는 최대 (r.date)보다 클 수 있습니다) uestion을 사용하고 테이블의 열을 추가 하시겠습니까? –
내가 생각하는 것과 같은 것. – Neku
다른 테이블에 스레드와 응답을 저장하는 이유는 무엇입니까? 테이블을 모두 하나의 테이블에 저장하면 큰 데이터 세트에 대한 성능 문제가 발생하지 않을 것입니다. –