1
0
mirror of synced 2024-12-14 15:16:04 +03:00

new methods: addSelect() and addHaving()

This commit is contained in:
zYne 2007-03-16 22:05:36 +00:00
parent e65f623aea
commit a9817a03d5

View File

@ -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':