首頁 >後端開發 >php教程 >如何使用 PDO 檢索按列值分組的關聯數組?

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

Linda Hamilton
Linda Hamilton原創
2024-10-22 07:38:31217瀏覽

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

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

問題:

問題:將資料集有效地組織成按指定列的值分組的關聯數組,在使用PDO 的FETCH_GROUP|PDO::FETCH_ASSOC 模式時,需要找到一種方法來繞過不必要的巢狀層級。

解決方案:

<code class="php">$stmt = $pdo->query('SELECT * FROM employee');
$result = $stmt->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE);</code>
透過利用 PDO::FETCH_GROUP 和 PDO::FETCH_UNIQUE 模式的組合,可以透過單一取得操作實現所需的陣列結構。

下面的程式碼片段示範了這個方法:

<code class="php">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
        )
)</code>
PDO::FETCH_GROUP 模式以第一列的值對行進行分組,而PDO::FETCH_UNIQUE 確保結果僅包含每個唯一組值的第一行。

因此,$result 數組將包含以下結構:這消除了單獨使用PDO::FETCH_GROUP|PDO::FETCH_ASSOC 時遇到的不必要的嵌套級別,提供了更有效率、更直接的方式檢索按列值分組的關聯數組的方法。

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn