Intereting Posts
Применить валидацию перед преобразованием данных htaccess получить разбиение на страницы с косой чертой Определение, является ли свойство объекта пустым htaccess mod_rewrite часть URL-адреса для переменной GET Запуск на стороне сервера js из php через exec () Как преобразовать шестнадцатеричное значение в целое число со знаком в PHP? Печать вложенного массива PHP в виде $ var = value; Модульные тесты для вывода HTML? Если я храню объект в сеансе PHP, когда я получаю этот объект, является ли он полноценным объектом, на который я могу вызвать функции? Использование PHP, поиск в архивных почтовых сообщениях Gmail динамически обновлять диаграмму google при выпадающем списке с помощью ajax и php Почему мой короткий код выполняется перед другим контентом? Сообщения WordPress в столбцах Подтвердить URL для многоязычия – японский langauga PHP POST для URL с перенаправленным пользователем

Laravel 4 – JOIN – имя той же колонки

В настоящее время я использую этот код для извлечения необходимых данных из моей базы данных

$query = DB::table('packages') ->join('assigned_packages', function($join) use($id) { $join->on('packages.id', '=', 'assigned_packages.registered_package_id') ->where('assigned_packages.customer_id', '=', $id); }) ->join('registered_packages', function($join) { $join->on('packages.id', '=', 'registered_packages.id') ->on('registered_packages.id', '=', 'assigned_packages.registered_package_id'); }); 

Он работает нормально, однако проблема заключается в том, что в этих таблицах есть столбцы с одинаковым именем, и поэтому в результате получается только последний. Как я могу это исправить? Обычно я бы использовал параметр as в запросе, но я честно не знаю, как я могу добавить его в мой текущий код JOIN сверху.

 $query = DB::table('packages') ->join(...) ->join(...) ->select(DB::raw('packages.name as name1, assigned_packages.name as name2')) ->get(); к $query = DB::table('packages') ->join(...) ->join(...) ->select(DB::raw('packages.name as name1, assigned_packages.name as name2')) ->get(); к $query = DB::table('packages') ->join(...) ->join(...) ->select(DB::raw('packages.name as name1, assigned_packages.name as name2')) ->get(); 

редактировать:

 $sql = "select a.name as name1, b.name as name2"; $sql .= " from a left join b on a.id=b.id1 and b.id2=&id"; $result = DB::select($sql);