/**
  * Test the leftJoin() and innerJoin method of the DataQuery object
  */
 public function testJoins()
 {
     $dq = new DataQuery('Member');
     $dq->innerJoin("Group_Members", "\"Group_Members\".\"MemberID\" = \"Member\".\"ID\"");
     $this->assertSQLContains("INNER JOIN \"Group_Members\" ON \"Group_Members\".\"MemberID\" = \"Member\".\"ID\"", $dq->sql($parameters));
     $dq = new DataQuery('Member');
     $dq->leftJoin("Group_Members", "\"Group_Members\".\"MemberID\" = \"Member\".\"ID\"");
     $this->assertSQLContains("LEFT JOIN \"Group_Members\" ON \"Group_Members\".\"MemberID\" = \"Member\".\"ID\"", $dq->sql($parameters));
 }
Exemple #2
0
 /**
  * Add an left join clause to this data list's query.
  *
  * @param string $table Table name (unquoted)
  * @param string $onClause Escaped SQL statement, e.g. '"Table1"."ID" = "Table2"."ID"'
  * @param string $alias - if you want this table to be aliased under another name
  * @return DataList 
  */
 public function leftJoin($table, $onClause, $alias = null)
 {
     $this->dataQuery->leftJoin($table, $onClause, $alias);
     return $this;
 }