Пример #1
0
 function fill(SelectQuery $selectQuery, EntityQueryBuilder $entityQueryBuilder)
 {
     if ($this->lookupProperty) {
         $this->expression = $entityQueryBuilder->getEntity()->getLogicalSchema()->getIdentifier();
     }
     return parent::fill($selectQuery, $entityQueryBuilder);
 }
Пример #2
0
 /**
  * Create a SQLFunction with the expression as the argument
  *
  * @param EntityQuery $entityQuery
  * @return SqlFunction
  */
 protected function getSqlFunction(EntityQueryBuilder $entityQueryBuilder)
 {
     return new AliasedSqlValueExpression(new SqlFunction($this->getFunc(), $entityQueryBuilder->subject($this->expression)), $this->alias);
 }
Пример #3
0
 /**
  * Converts value expression to be appended to SELECT list
  * @param EntityQueryBuilder $builder
  * @return ISqlValueExpression
  */
 protected function getValueExpression(EntityQueryBuilder $builder)
 {
     $builder->registerIdentifier($this->alias);
     return new AliasedSqlValueExpression($builder->subject($this->expression), $this->alias);
 }
 /**
  * Adds the table field to the SELECT list
  *
  * @param string $field
  * @param SelectQuery $selectQuery
  * @param EntityQueryBuilder $entityQueryBuilder
  */
 protected function fillPropertyField($field, SelectQuery $selectQuery, EntityQueryBuilder $entityQueryBuilder)
 {
     $entityQueryBuilder->registerIdentifier($field);
     $selectQuery->get(new SqlColumn($field, $entityQueryBuilder->getAlias()));
 }
Пример #5
0
 /**
  * @param EntityQueryBuilder $builder
  * @param OrmProperty $property
  */
 function __construct(EntityQueryBuilder $builder, OrmProperty $property)
 {
     $this->owner = $builder->getAlias();
     $this->property = $property;
     Assert::isTrue($property->getType()->getColumnCount() == 1, 'composite property querying is not supported (`%s`.`%s` is ambiguous)', $builder->getEntity()->getLogicalSchema()->getEntityName(), $property->getName());
 }