有没有办法只 return 这个 Laravel 查询的 ID

Is there a way to only return the ID from this Laravel Query

我有一个 运行 查询来满足我的特定需求,但它返回了一大堆数组, 有没有办法只获取我需要的特定列?

这就是我正在尝试的

 $datas = DB::table('tableA')
                    ->select('tableA.id')
                    ->rightJoin('tableB','tableA.id','=','tableB.tableAt_id')
                    ->where('tableB.active',1)
                    ->whereIn('tableB.status',$myArray)
                    ->get();

输出为

Illuminate\Support\Collection {#1349 ▼
  #items: array:221 [▼
    0 => {#1327 ▼
      +"id": 2020010201
    }
    1 => {#1346 ▼
      +"id": 2020010202
    }
    2 => {#1343 ▼
      +"id": 2020011501
    }

我只要身份证。我试过 toArray() 但它是一样的

使用 pluck。

你的代码应该是。

$datas = DB::table('tableA')
                    ->rightJoin('tableB','tableA.id','=','tableB.tableAt_id')
                    ->where('tableB.active',1)
                    ->whereIn('tableB.status',$myArray)
                    ->pluck('tableA.id');

Read More about Pluck Method