2012-05-12 3 views
0

블로그 포스트, 사용자 및 댓글이있는 간단한 블로그 사이트를 만들어야합니다. 블로그 게시물은 사용자가 을 언급하고 홈페이지에 나는이 3 개 테이블과 가입 쿼리를 수행해야합니다 내가 3 MySQL의 테이블을 만든이 데이터베이스와이 쿼리를 최적화하는 방법은 무엇입니까?

: 홈페이지에서 는 사용자의 정보를 사용자의 의견은 아래의 블로그 게시물을 표시됩니다.

3 쿼리와 함께이 JOIN을 피할 수있는 방법이 있습니까?

+0

; 먼저 blogpost를 가져온 다음 ... 해당 blogpost에 대한 사용자 및 의견을 얻습니다. –

+1

JOIN으로 피하려고하는 것은 무엇입니까? 기본적으로 JOIN (또는 여러 SELECT)을 피하기 위해 정규화 된 데이터베이스 스키마를 사용하는 방법은 없습니다. 데이터를 비정규 화하는 유일한 방법이 될 수 있습니다. 그러나 이렇게하는 것은 비용이 들기 때문에, 아마도 여러분의 추론이 아마도 여기에있는 사람들이 다른 방법으로 도울 수 있다고 우리에게 말하면 ... –

답변

0

해당 세 테이블의 데이터를 나타내는 뷰를 만들고 해당 뷰에서 데이터를 선택하기 만하면됩니다.

참조 here

예 : 나는 두 개의 별도의 쿼리에서 쿼리를 분리 할

create view v as 
    select t1.id, t2.id as id2 
    from t1 inner join t2 on t1.id = t2.id; 

select * from v; 
+1

이것은 조인을 피하지 않으며 단순히 숨 깁니다. –

+0

예. 나는 그것이 OP가 원하는 것이라고 생각한다. –

관련 문제