new methods: addSelect() and addHaving()
This commit is contained in:
parent
e65f623aea
commit
a9817a03d5
@ -178,13 +178,14 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
|
|||||||
} else {
|
} else {
|
||||||
|
|
||||||
$e = explode('.', $reference);
|
$e = explode('.', $reference);
|
||||||
if(count($e) > 2)
|
if (count($e) > 2) {
|
||||||
$this->pendingFields[] = $reference;
|
$this->pendingFields[] = $reference;
|
||||||
else
|
} else {
|
||||||
$this->pendingFields[$e[0]][] = $e[1];
|
$this->pendingFields[$e[0]][] = $e[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
public function parseAggregateFunction2($func)
|
public function parseAggregateFunction2($func)
|
||||||
{
|
{
|
||||||
$e = Doctrine_Query::bracketExplode($func, ' ');
|
$e = Doctrine_Query::bracketExplode($func, ' ');
|
||||||
@ -468,6 +469,32 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
|
|||||||
$this->params[] = $params;
|
$this->params[] = $params;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* addSelect
|
||||||
|
*
|
||||||
|
* @param string $select
|
||||||
|
*/
|
||||||
|
public function addSelect($select)
|
||||||
|
{
|
||||||
|
$this->type = self::SELECT;
|
||||||
|
|
||||||
|
$this->parseSelect($select);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* addHaving
|
||||||
|
*
|
||||||
|
* @param string $having
|
||||||
|
*/
|
||||||
|
public function addHaving($having)
|
||||||
|
{
|
||||||
|
$class = 'Doctrine_Query_Having';
|
||||||
|
$parser = new $class($this);
|
||||||
|
$this->parts['having'][] = $parser->parse($orderby);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* sets a query part
|
* sets a query part
|
||||||
*
|
*
|
||||||
@ -485,9 +512,9 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
|
|||||||
case 'select':
|
case 'select':
|
||||||
$this->type = self::SELECT;
|
$this->type = self::SELECT;
|
||||||
|
|
||||||
if( ! isset($args[0]))
|
if ( ! isset($args[0])) {
|
||||||
throw new Doctrine_Query_Exception('Empty select part');
|
throw new Doctrine_Query_Exception('Empty select part');
|
||||||
|
}
|
||||||
$this->parseSelect($args[0]);
|
$this->parseSelect($args[0]);
|
||||||
break;
|
break;
|
||||||
case 'delete':
|
case 'delete':
|
||||||
|
Loading…
Reference in New Issue
Block a user