如何将mysql选择连接结果作为1维数组?

时间:2017-06-27 17:02:58

标签: php mysql

我正在使用此选择联接查询来获取关联的医生ID,只知道表b的ID。结果如下所示:

Array ( [0] => Array ( [id] => 2 ) [1] => Array ( [id] => 40 ) )

我想要的是这样,相同但没有额外的数组[id]:

Array ( [0] => 2 [1] => 40  )

以下是查询:

  select a.doctor_id as id from assigned_doctors a INNER JOIN appointments b
  ON a.appointment_number = b.appointment_number WHERE b.id = 283

我是否可以通过某种方式更改查询以获得该结果?我想这种格式是由使用连接引起的。没什么大不了的,但宁可不必处理索引。

2 个答案:

答案 0 :(得分:3)

将您的提取更改为仅存储id而不是整个行数组。您还没有展示它,但无论API如何,它都是相似的:

while($row = $result->fetch_assoc()) {
    $ids[] = $row['id'];
}

如果您通过fetchAll()获得此信息或仅供将来参考,则可以从行数组数组中提取id列:

$ids = array_column($rows, 'id');

答案 1 :(得分:2)

    We can use like this to get result :

    while($row = $result->fetch_array()) {
        $ids[$row['id']] = $row['id'];
    }

    array_keys($ids);
OR array_values($ids);