sql - 2개 필드 합쳐서 동일값 순으로 정렬 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

sql - 2개 필드 합쳐서 동일값 순으로 정렬 정보

sql - 2개 필드 합쳐서 동일값 순으로 정렬

본문

1개 필드(wr_subject 또는 wr_3)를 검색해서 동일한 필드값이 많은 순으로 추출하고 있습니다.

function latest_hottest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="")
{
...............

if ($options==wr_subject) {
$sql="select *, wr_subject, count(*) AS sameSubject from $tmp_write_table group by wr_subject order by sameSubject desc  ";

} else if ($options==wr_3) {
$sql="select *, wr_3, count(*) AS samewr3 from $tmp_write_table group by wr_3 order by samewr3 desc  ";
}
.................
}

위와 같이 wr_subject와 wr_3 필드 각각에 대해서는 중복값 많은 순으로 추출됩니다.
링크한 사이트 우측에 있는 것은
각각 wr_subject 톱10, wr_3 톱10으로 추출한 결과입니다.

문의내용은
wr_subject와 wr_3 필드를 합쳐서 중복값 많은 순으로 추출하려고 합니다.

이렇게 저렇게 해봐도 계속 에러가 나서 도움 청합니다!!
  • 복사

댓글 전체

SELECT wr_subject , count
FROM (
(
SELECT wr_subject, count( * ) AS count
FROM $tmp_write_table
GROUP BY wr_subject
)
UNION (
SELECT wr_3, count( * ) AS count
FROM $tmp_write_table
GROUP BY wr_3
)) AS a
ORDER BY count DESC
LIMIT 0 , 10

대략 이런형식으로 union 구문을 사용하시면 될듯 합니다
기타 추가적 필터리링을 하시면 되고요
© SIRSOFT
현재 페이지 제일 처음으로