Class Yiisoft\Db\QueryBuilder\Condition\Builder\SimpleBuilder
| Inheritance | Yiisoft\Db\QueryBuilder\Condition\Builder\SimpleBuilder |
|---|---|
| Implements | Yiisoft\Db\Expression\ExpressionBuilderInterface |
Build an object of Yiisoft\Db\QueryBuilder\Condition\Simple into SQL expressions.
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Db\QueryBuilder\Condition\Builder\SimpleBuilder | |
| build() | Build SQL for Yiisoft\Db\QueryBuilder\Condition\Simple. | Yiisoft\Db\QueryBuilder\Condition\Builder\SimpleBuilder |
Method Details
| public __construct( Yiisoft\Db\QueryBuilder\QueryBuilderInterface $queryBuilder ): mixed | ||
| $queryBuilder | Yiisoft\Db\QueryBuilder\QueryBuilderInterface | |
public function __construct(private readonly QueryBuilderInterface $queryBuilder) {}
Build SQL for Yiisoft\Db\QueryBuilder\Condition\Simple.
| public build( Yiisoft\Db\QueryBuilder\Condition\Simple $expression, array &$params = [] ): string | ||
| $expression | Yiisoft\Db\QueryBuilder\Condition\Simple | |
| $params | array | |
| throws | Yiisoft\Db\Exception\NotSupportedException | |
|---|---|---|
public function build(ExpressionInterface $expression, array &$params = []): string
{
$operator = $expression->operator;
$column = $expression->column;
$value = $expression->value;
$column = $column instanceof ExpressionInterface
? $this->queryBuilder->buildExpression($column, $params)
: $this->queryBuilder->getQuoter()->quoteColumnName($column);
if ($value === null) {
return "$column $operator NULL";
}
if ($value instanceof ExpressionInterface) {
return "$column $operator {$this->queryBuilder->buildExpression($value, $params)}";
}
return "$column $operator {$this->queryBuilder->buildValue($value, $params)}";
}
Signup or Login in order to comment.