public function andHaving(...$conditions): Select
    {
        $condition = $this->prepareCondition($conditions);

        if ($this->having instanceof CompositeBuilder
            && $this->having->getType() === 'AND') {
            $this->having->addPart($condition);
        } else {
            $this->having = new CompositeBuilder([$this->having, $condition]);
        }
        return $this;
    }
public function andHaving(...$conditions): Select
    {
        $condition = $this->prepareCondition($conditions);

        if ($this->having instanceof CompositeBuilder
            && $this->having->getType() === 'AND') {
            $this->having->addPart($condition);
        } else {
            $this->having = new CompositeBuilder([$this->having, $condition]);
        }
        return $this;
    }
public function andHaving ( ... $ conditions ) : Select { $ condition = $ this -> prepareCondition ( $ conditions ) ; if ( $ this -> having instanceof CompositeBuilder && $ this -> having -> getType ( ) === 'AND' ) { $ this -> having -> addPart ( $ condition ) ; } else { $ this -> having = new CompositeBuilder ( [ $ this -> having , $ condition ] ) ; } return $ this ; }
Adds a restriction over the groups of the query, forming a logical
conjunction with any existing having restrictions

@param  string[] $conditions the query restriction predicates

@return Select
Adds a restriction over the groups of the query forming a logical conjunction with any existing having restrictions