2012-08-29 2 views
1

나는 Lithium와 함께 새거야. 왼쪽 조인을해야합니다. 이것은 내가 필요한 query입니다.왼쪽 조인이있는 리튬

SELECT `title`,`body`,`user_id`,`users`.`username`,`users`.`id` 
FROM `posts` LEFT JOIN `users` 
     ON `user_id` = `users`.`id` 

나는 이런 식으로하려고합니다.

$conditions['user_id'] = $this->data['user_id']; 
       $posts = Post::all(array(
        'conditions' => $conditions, 
        'fields' => array('title','body','username'), 
        'join' => array('source' => 'posts', 
        'type' => 'LEFT', 
        'constraint' => array('post.user_id' => 'Users.id')), 
        ))->data(); 

답변

1

관계형 데이터와 간단한 JOINS을 사용하여 리튬의 관계을, 관계를 만들 사용하여 설명합니다 (예를 들어 블로그를 사용하는) 좋은 튜토리얼 here이 있습니다.

또한 check out 공식 문서뿐만 아니라이 답변 수 : How do I perform joins with lithium models?

당신이 당신의 모델에 관계 세트가되면 당신은 단순히 당신의 JOINS을 할 수 등 :

$posts = Posts::find('all', array(
    'with' => 'Users' 
)); 

리튬에는 서로 다른 유형의 관계가 있습니다. JOINS ...

  • hasOne의은 : 현재의 객체가 belongsTo를
  • 다른 유형의 많은 개체에 링크 : 현재 개체를 소유하고 현재의 객체는
  • 는 hasMany의 다른 유형의 단일 객체에 연결되어 과 관련된 것으로 표시되어 있습니다.
+0

빠른 답변 감사드립니다. 문제가 해결되었습니다. – Cosmin