Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Laravel 5.x » Как получить количество элементов в запросе с having? » 07.10.2016 20:53:46

UksusoFF
Ответов: 0

Здравствуйте!
Подскажите как получить количество элементов в выборке если в запросе присутствует having?
Пробую вот так (упрощенный вариант без кучи фильтров):

    public function getListing($page = null, $count = null) {
        $query = User::newQuery();

        $table = User::getTable();

        $query->select("{$table}.*", DB::raw('count(users.id) as images_count'));
        $query->leftJoin('images', 'images.user_id', '=', "{$table}.id");
        $query->havingRaw("images_count >= {$table}.image_limit");

        $queryCount = clone $query;
        $totalCount = $queryCount->distinct("{$table}.id")->count();

        $query->groupBy("{$table}.id");

        if (!is_null($page) && !is_null($count)) {
            $query->skip(($page - 1) * $count);
        };

        if (!is_null($count)) {
            $query->take($count);
        };

        $result = $query->get();

        return [
            $result,
            $totalCount,
        ];
    }

Column not found: 1054 Unknown column 'images_count' in 'having clause' (SQL: select count(*) as aggregate from `users` left join `images` on `images`.`user_id` = `users`.`id` having images_count >= users.image_limit

Без having все работает без проблем hmm

Подвал раздела