Привет, ребята, я новичок в построителе запросов laravel. Я хочу преобразовать этот запрос в построитель запросов laravel. Заранее спасибо.
$bo_facilities = ' SELECT
a.bo_facility_code,
a.bo_facility_groupcode,
a.bo_number,
a.bo_indYesOrNo,
a.bo_indLogic,
b.bo_content_facility_description
FROM
bo_facilities AS a
RIGHT JOIN bo_content_facilities AS b
ON b.bo_content_facility_code = a.bo_facility_code AND b.bo_content_facility_facilityGroupCode = a.bo_facility_groupcode
WHERE a.bo_hotel_code = "1" GROUP BY b.bo_content_facility_description';
Мой метод groupBy не работал.
$join->groupBy('b.bo_content_facility_description');
это весь мой код Я не знал лучшего способа.
DB::table('bo_facilities AS a')
->select("a.bo_facility_code", "a.bo_facility_groupcode", "a.bo_number", "a.bo_indYesOrNo", "a.bo_indLogic", "b.bo_content_facility_description")
->join('bo_content_facilities AS b', function ($join) {
$join->on('b.bo_content_facility_code', '=', 'a.bo_facility_code');
$join->on('b.bo_content_facility_facilityGroupCode', '=', 'a.bo_facility_groupcode');
$join->groupBy('b.bo_content_facility_description');
})
->where('a.bo_hotel_code', $hotelCode)
->get();






Наконец-то я уже исправил свою проблему.
$bo_facilities_raw = DB::table('bo_facilities AS a')
->join('bo_content_facilities AS b', function ($join) {
$join->on([['b.bo_content_facility_code', '=', 'a.bo_facility_code'], ['b.bo_content_facility_facilityGroupCode', '=', 'a.bo_facility_groupcode']]);
})
->select("a.bo_hotel_code","a.bo_facility_code", "a.bo_facility_groupcode", "a.bo_number", "a.bo_indYesOrNo", "a.bo_indLogic", "b.bo_content_facility_description", "b.bo_content_facility_code", "b.bo_content_facility_facilityGroupCode")
->where('a.bo_hotel_code', 1)
->get();
$bo_facilities_decode = json_decode($bo_facilities_raw, true);
$remove_dupli = array_unique(array_column($bo_facilities_decode, 'bo_content_facility_description'));
$bo_facilities = array_intersect_key($bo_facilities_decode, $remove_dupli);
дублирование записей было внутри многомерного массива, поэтому я использую уникальный массив и ключ пересечения массива для удаления повторяющихся описаний.