Предположим, у меня есть таблица продуктов, в которой есть эти столбцы: id, user_id Как я могу получить все строки этой таблицы только один раз, если две строки имеют одинаковый user_id в Laravel?
я могу использовать where other_id =?
Можете ли вы опубликовать образцы данных и ожидаемый результат?
id: 1,2,3,4,5 - user_id: 1,1,2,3,4 Я хочу что-то вроде этого: SELECT * FROM product ТОЛЬКО ОДИН РАЗ, если следующие user_id совпадают, поэтому в этом примере он получит только строки с id 1,3,4,5
Что вы имели в виду под своим первым комментарием? Вы хотите получить продукт с самым низким / самым высоким order_id (если у user_id несколько продуктов)?
пусть будет, думаю, будет проще, если я создам еще одну таблицу, индексирующую ее из предыдущей, все равно спасибо


Это вернет все столбцы в модели продукта без каких-либо дубликатов user_id. Итак, он вернет только одну строку на user_id.
$productModel->groupBy('user_id')->get();
Когда на
user_idнесколько строк, какую из них вы хотите получить?