2010-06-03 4 views
0

HI,ttwo 테이블을 사용하여 조인을 수행하는 방법은 무엇입니까?

내가이 쿼리 변환하려고 :

SELECT * 
FROM `reunion` , lieu 
WHERE reunion.lieu_reunion = lieu.id_lieu 

쿼리 추진하기 : 내가 만든

$c=new Criteria(); 
$c->addJoin(ReunionPeer::LIEU_REUNION,LieuPeer::ID_LIEU, Criteria::LEFT_JOIN); 
$this->reunions = ReunionPeer::doSelect($c); 

하지만 내 템플릿에

하는 인 print_r ($ 상봉), 현장 "ville"('lieu'테이블에서)이 없습니다.

왜 ??

SELECT * FROM `reunion` LEFT JOIN lieu ON (reunion.lieu_reunion = lieu.id_lieu); 

그런 다음 나는이 제안 할 수 있습니다 : 모든

답변

1

첫째는, 당신의 추진의 쿼리로 변환됩니다 당신이 당신의 데이터베이스 스키마에서이 외래 키를 선언하면

$c=new Criteria(); 
$c->clearSelectColumns(); 
ReunionPeer::addSelectColumns($c); 
LieuPeer::addSelectColumns($c); 

$c->addJoin(ReunionPeer::LIEU_REUNION,LieuPeer::ID_LIEU, Criteria::LEFT_JOIN); 
$this->reunions = ReunionPeer::doSelect($c); 
1

을 추진 만들 것 하나의 쿼리에서 관련 테이블과 개체의 조인과 수화를 수행하는 추가 함수 :

$this->reunions = ReunionPeer::doSelectJoinLieu(new Criteria()); 
관련 문제