이런경우 left join이 가능할까요??? 정보
이런경우 left join이 가능할까요???본문
최신글 게시판에서 club 이라는 특정 그룹의 글 중에서 조횟수 기준으로 최신글을 10개 가져 오고 싶습니다. 그런데, 아시다시피 $g4[board_new_table] 테이블에는 조횟수라는게 없쟎아요. ㅠ..ㅠ
그래서... 다음처럼 left join을 할 수가 없더라구요. 왜냐하면... $g4[board_new_table] 테이블의 $bo_table 필드값이 left join의 테이블 값이 되쟎아요.
$sql = " select * from $g4[board_new_table] a left join $bo_table??? b on (a.bo_table
좀... 횡설수설인데... 좋은 방법이 없을까요???
$g4[board_new_table] 테이블에 board 테이블을 join 하는방법... 너무 알고파요 ^^
그래서... 다음처럼 left join을 할 수가 없더라구요. 왜냐하면... $g4[board_new_table] 테이블의 $bo_table 필드값이 left join의 테이블 값이 되쟎아요.
$sql = " select * from $g4[board_new_table] a left join $bo_table??? b on (a.bo_table
좀... 횡설수설인데... 좋은 방법이 없을까요???
$g4[board_new_table] 테이블에 board 테이블을 join 하는방법... 너무 알고파요 ^^
댓글 전체
음...제생각에는 않될거 같은데요..
join이야 되겠지만.. 한 그룹에 여러개의 게시판 테이블에서 조회수가 가장 많은것을 10개를 뽑아내야 하니
음... 각 게시판이 10개라면 가능하겠죠.. 고정이라면 말이죠..
그렇지 않고서야 10개이상인경우는 안될듯 싶은데요..
쿼리의 조합가지고만 하는건 무리인듯 싶네요
join이야 되겠지만.. 한 그룹에 여러개의 게시판 테이블에서 조회수가 가장 많은것을 10개를 뽑아내야 하니
음... 각 게시판이 10개라면 가능하겠죠.. 고정이라면 말이죠..
그렇지 않고서야 10개이상인경우는 안될듯 싶은데요..
쿼리의 조합가지고만 하는건 무리인듯 싶네요
굳이 한번 해본다면
$sql = " select * from $g4[board_table] a "; //클럽그룹에서의 각 게시판 테이블이름 덜
if ($클럽 == "club") {
$sql .= " left join $g4[board_new_table] b on (b.bo_table = a.bo_table)
where b.bo_table = :bo_table order by a.wr_hit desc limit 1";
}
하시면 각 테이블당 조회수 가장 높은 1개가 나올듯 싶은데요...ㅡ.ㅡa 맞는 쿼리인지 모르겠네요 ㅎㅎ
$sql = " select * from $g4[board_table] a "; //클럽그룹에서의 각 게시판 테이블이름 덜
if ($클럽 == "club") {
$sql .= " left join $g4[board_new_table] b on (b.bo_table = a.bo_table)
where b.bo_table = :bo_table order by a.wr_hit desc limit 1";
}
하시면 각 테이블당 조회수 가장 높은 1개가 나올듯 싶은데요...ㅡ.ㅡa 맞는 쿼리인지 모르겠네요 ㅎㅎ
하루종일 고민했습니다. union all을 통해서 board를 모두 합친 다음에... left join을 하는거 가능하게더라구요. 속도는 절대로 보장할 수 없지만요. ㅎㅎ... ^^
그렇죠..union all을 하면 전부를 합친거기때문에 가능하긴 하겠죠..
하지만 inner나 left 한거보다는 속도의 차이가 아주 장난 아니겠죠..ㅋㅋ
하지만 inner나 left 한거보다는 속도의 차이가 아주 장난 아니겠죠..ㅋㅋ
각 게시판별로 최근글 10개씩을 union all 한 다음에... 그것을 op할까 생각도 해보구 있어요.
board_new 게시판에 추가 확장 필드가 있으면 이럴 때 유용한데 아쉬워요. ㅎㅎ...
board_new 게시판에 추가 확장 필드가 있으면 이럴 때 유용한데 아쉬워요. ㅎㅎ...
ㅎㅎ 그냥 강제적으로 alter를 이용해 이번기회에 추가해 보심이..