Как сделать неосновный столбец уникальным в возвращаемом наборе результатов с помощью красноречивого Laravel? - PullRequest
0 голосов
/ 14 мая 2018

В этом примере ниже я запрашиваю все колледжи, в которых штат CO. Но я хотел бы сказать groupBy('name') или что-то , чтобы получить одну запись названия колледжа.

При попытке получить следующую ошибку:

# Error:
SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'imr.colleges.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by (SQL: select * from `colleges` where `state` = CO group by `name` limit 15 offset 135)

# Code:
College::where('state',$state)->groupBy('name')->paginate(15);

Меня не особо волнует, какой колледж (id) возвращен, я просто хочу иметь возможность вернуть одно название каждого колледжа в каждом штате.

Любая помощь приветствуется.

Collection of states returned

1 Ответ

0 голосов
/ 14 мая 2018

Попробуйте это

College::selectRaw('GROUP_CONCAT(id), name, GROUP_CONCAT(state)')->where('state',$state)->groupBy('name')->paginate(15);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...