지정한 열이 다른 테이블의 외래 키인 행 수를 얻는 올바른 방법은 무엇입니까? 여기에 무슨 뜻입니까 :Lolavel에서 조인 된 행 수 얻기
나는 providers
과 products
테이블이 있습니다. 공급자 테이블에는 기본 키 provider_id
이 있고 테이블 products
에는 provider_id
에 대한 외래 키 참조가 같은 이름의 열 provider_id
을 통해 있습니다. 제 의도는 모든 제품을 포함하여 각 공급자의 세부 정보를 가져 오는 것입니다. 이 테이블의 providers_id
테이블과 일치하는 모든 인스턴스가 포함됩니다. 내가 잘못 뭐하는 거지
Undefined property: Illuminate\Database\MySqlConnection::$id (View: /var/www/test/app/resources/views/agent/serviceproviders/index.blade.php)
:
이$data = DB::table('providers')
->join('products', 'products.provider_id', '=', 'providers.provider_id')
->select(
'providers.provider_id AS id',
'providers.provider_name AS name',
DB::raw("count(products->where('products.provider_id','=','providers.provider_id')) AS total_products"),
'providers.claims AS claims',
'providers.settlements AS settlements')
->groupBy('provider')
->get();
이것은 내가 아래의 오류를 얻고으로 작동하지 않을 것 같다
여기 내 코드입니까?
고맙습니다. @Oluwafemi Sule. –
아마도 products.id와 충돌합니다. 왜 별칭을 사용하지 않더라도 별칭을 제공합니까? –
@AnarBayramov 제품이 없습니다 .id. 두 테이블 사이의 공통적 인 측면은 providers.provider_id 인 제공자 테이블의 기본 키입니다 (예, 사람들이 자주 사용하는 일반 ID 대신 자동으로 증가하는 provider_id 열 이름). 나는 문제를 발견하고 그것을 분류했다, 나는 정확한 코드를 게시하려하고있다. –