Want to compare two columns of different table in laravel Code Answer

Hello Developer, Hope you guys are doing great. Today at Tutorial Guruji Official website, we are sharing the answer of Want to compare two columns of different table in laravel without wasting too much if your time.

The question is published on by Tutorial Guruji team.

I want to compare two columns from two different tables, I have column called “Features” in Model Attrition_correlators and another “Topcorrelators” in Membersdetail. Since I am new to laravel not sure how I can get the value and compare both values. Here is my code:

Controller.php

public function show(Memberdetails $Memberdetail, Attrition_correlators $Attrition_correlation_list)
    {
        
        return view('admin.members.Detailspage',compact('Memberdetail','Attrition_correlation_list'));
    }

 <div class="card-body p-0">
    <table class="table table-striped">
      @foreach(explode(',', $Memberdetail->Topcorrelators) as $row)
      <tr>
        <td>
          {{ $row }}
        </td>
         @if($Attrition_correlation_list->Features == $Memberdetail->Topcorrelators)
        <td>
          1
        </td>
        @else
        <td>
          0
        </td>
        @endif
   </tr>
   @endforeach

I want to compare the data which I am getting $row with the values in “features” if they match Want to get the value of correlation which is in Model “Attrition_correlators” under . Can anyone help me out in this! Thanks in Advance Below is the error I am getting enter image description here

Answer

It’s because you get a collection of Attrition_correlation_list. In this case you need to iterate over it to get properties:

@foreach(explode(',', $Memberdetail->Topcorrelators) as $row)
    <tr>
        <td>
            {{ $row }}
        </td>
        @foreach($Attrition_correlation_list as $item)
            @if($item->Features == $row)
            ...
            @else
            ...
            @endif
        @endforeach
   </tr>
   @endforeach

You also need to edit your controller like below. Because you passed null value in $Attrition_correlation_list

public function show(Memberdetails $Memberdetail)
    {
        $Attrition_correlation_list = Attrition_correlators::all();
        return view('admin.members.Detailspage',compact('Memberdetail','Attrition_correlation_list'));
    }
We are here to answer your question about Want to compare two columns of different table in laravel - If you find the proper solution, please don't forgot to share this with your team members.

Related Posts

Tutorial Guruji