Signed-off-by: Robin Appelman <robin@icewind.nl>
@ -71,4 +71,8 @@ class FunctionBuilder implements IFunctionBuilder {
public function subtract($x, $y) {
return new QueryFunction($this->helper->quoteColumnName($x) . ' - ' . $this->helper->quoteColumnName($y));
}
public function count($input) {
return new QueryFunction('COUNT(' . $this->helper->quoteColumnName($input) . ')');
@ -96,4 +96,12 @@ interface IFunctionBuilder {
* @since 14.0.0
*/
public function subtract($x, $y);
/**
* @param mixed $input The input to be counted
*
* @return IQueryFunction
public function count($input);
@ -110,4 +110,14 @@ class FunctionBuilderTest extends TestCase {
$this->assertEquals(1, $query->execute()->fetchColumn());
public function testCount() {
$query = $this->connection->getQueryBuilder();
$query->select($query->func()->count('appid'));
$query->from('appconfig')
->setMaxResults(1);
$this->assertGreaterThan(1, $query->execute()->fetchColumn());