public function execute(Builder $query) { foreach ($this->getValuesIterator() as $groupBy) { $query->groupBy($groupBy->getValue()); } return $query; }
protected function checkQueryGroupBy() { $groups = $this->query->getQuery()->groups; $keyGroup = $this->model->getQualifiedKeyName(); if (empty($groups) || !in_array($keyGroup, $groups)) { $this->query->groupBy($keyGroup); } }
public function groupBy() { foreach (func_get_args() as $column) { $this->groups[] = is_string($column) ? snake_case($column) : $column; } return parent::groupBy(); // TODO: Change the autogenerated stub }
/** * Add a "group by" clause to the query. * * @param array|string $column,... * @return $this * @static */ public static function groupBy() { return \Illuminate\Database\Query\Builder::groupBy(); }
/** * @param \Illuminate\Database\Eloquent\Builder|\Illuminate\Database\Query\Builder $query * @return void */ public function applyQuery($query) { $query->selectRaw($this->getSQLSelect($query->from) . ' as __interval__'); $query->groupBy('__interval__'); }
/** * Modify a Builder object. Changes here can be nested * @param \Illuminate\Database\Query\Builder $query * @return \Illuminate\Database\Query\Builder $query */ public function apply(\Illuminate\Database\Query\Builder $query) { return $query->groupBy('test_users.id')->having('test_posts.views', '>=', $this->views); }
public function groupBy($field) { $this->_operator->groupBy($field); return $this; }