如何使用 PDO 檢索按特定列分組的關聯數組?

Linda Hamilton
發布: 2024-10-22 07:40:02
原創
966 人瀏覽過

How to Retrieve Associative Arrays Grouped by Specific Column with PDO?

使用PDO 取得按列值分組的關聯數組

問題:

在具有多個列的資料庫中(例如, “姓名”、“年齡”、“性別”和“位置”),我們如何使用PDO 的fetchAll 方法檢索特定格式的關聯數組,其中每個數組的鍵是指定列中的字段(例如,“姓名”) )且值是該鍵對應的行?

答案:

使用PDO 的fetchAll 方法,我們可以指定以下標誌來實現所需的結果:

<code class="php">->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE);</code>
登入後複製

透過組合FETCHTCHTCHTCHTCHTCHTCHTCHTCHTCHTCH ITCH最高程式 (FETCH_FE_和FETCH_UNIQUE,PDO 將自動按指定列對結果進行分組,並將第一列設定為每個組的鍵,同時排除重複記錄。這消除了額外的嵌套層級或像當前這樣的後處理操作的需要。

範例:

考慮以下範例資料集:

name age sex position
Antony 34 M programmer
Sally 30 F manager
Matthew 28 M designer

使用建議的fetch 方法,我們可以擷取所需的結果陣列:

<code class="php">$result = $pdo->query('SELECT * FROM employee')->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE);

print_r($result);</code>
登入後複製

這將輸出以下關聯數組:

Array
(
  [Antony] => Array
    (
      [age] => 34
      [sex] => M
      [position] => programmer
    )

  [Sally] => Array
    (
      [age] => 30
      [sex] => F
      [position] => manager
    )

  [Matthew] => Array
    (
      [age] => 28
      [sex] => M
      [position] => designer
    )
)
登入後複製

以上是如何使用 PDO 檢索按特定列分組的關聯數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!