You are here

public function QueryAggregate::createSqlAlias in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php \Drupal\Core\Entity\Query\Sql\QueryAggregate::createSqlAlias()
  2. 10 core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php \Drupal\Core\Entity\Query\Sql\QueryAggregate::createSqlAlias()

Builds a sql alias as expected in the result.

Parameters

string $field: The field as passed in by the caller.

string $sql_field: The sql field as returned by getSqlField.

Return value

string The SQL alias expected in the return value. The dots in $sql_field are replaced with underscores and if a default fallback to .value happened, the _value is stripped.

1 call to QueryAggregate::createSqlAlias()
QueryAggregate::addGroupBy in core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php
Adds the groupby values to the actual query.

File

core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php, line 153

Class

QueryAggregate
The SQL storage entity query aggregate class.

Namespace

Drupal\Core\Entity\Query\Sql

Code

public function createSqlAlias($field, $sql_field) {
  $alias = str_replace('.', '_', $sql_field);

  // If the alias contains of field_*_value remove the _value at the end.
  if (substr($alias, 0, 6) === 'field_' && substr($field, -6) !== '_value' && substr($alias, -6) === '_value') {
    $alias = substr($alias, 0, -6);
  }
  return $alias;
}