framework/db/QueryBuilder.php
public function buildExpression(ExpressionInterface $expression, &$params = [])
    {
        $builder = $this->getExpressionBuilder($expression);

        return $builder->build($expression, $params);
    }
public function buildExpression(ExpressionInterface $expression, &$params = [])
    {
        $builder = $this->getExpressionBuilder($expression);

        return $builder->build($expression, $params);
    }
Builds given $expression

@param ExpressionInterface $expression the expression to be built
@param array $params the parameters to be bound to the generated SQL statement. These parameters will
be included in the result with the additional parameters generated during the expression building process.
@return string the SQL statement that will not be neither quoted nor encoded before passing to DBMS
@see ExpressionInterface
@see ExpressionBuilderInterface
@see expressionBuilders
@since 2.0.14
@throws InvalidArgumentException when $expression building is not supported by this QueryBuilder.