private function startQuery() {
    $connection = \Drupal::database();

    $query = $connection->select('users', 'u')->fields('u', ['uid']);
    $query->join('users_field_data', 'uf', 'uf.uid = u.uid');
    $query->leftJoin('profile', 'p', 'p.uid = u.uid');

    if ($this->useFullName()) {
      $query->leftJoin('profile__field_profile_first_name', 'fn', 'fn.entity_id = p.profile_id');
      $query->leftJoin('profile__field_profile_last_name', 'ln', 'ln.entity_id = p.profile_id');
    }

    if ($this->addNickName() === TRUE) {
      $query->leftJoin('profile__field_profile_nick_name', 'nn', 'nn.entity_id = p.profile_id');
    }

    $query->condition('uf.status', 1);

    return $query;
  }