ホームページ  >  記事  >  バックエンド開発  >  PDO を使用して列値によってグループ化された連想配列を取得するにはどうすればよいですか?

PDO を使用して列値によってグループ化された連想配列を取得するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-22 07:38:31151ブラウズ

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

PDO を使用して列の値によってグループ化された連想配列を取得する

問題:
データセットを効率的に整理するには指定された列の値によってグループ化された連想配列では、PDO の FETCH_GROUP|PDO::FETCH_ASSOC モードを使用するときに不必要なネスト レベルをバイパスする方法を見つける必要があります。

解決策:
PDO::FETCH_GROUP モードと PDO::FETCH_UNIQUE モードの組み合わせを活用することで、単一のフェッチ操作で目的の配列構造を実現できます。

以下のコード スニペットは、このアプローチを示しています。

<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 では、一意のグループ値ごとに最初の行のみが結果に含まれることが保証されます。

結果として、$result 配列には次の構造が含まれます:

<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_ASSOC を単独で使用するときに発生する不必要なネスト レベルが排除され、より効率的で簡単な構造が提供されます。列の値によってグループ化された連想配列を取得する方法。

以上がPDO を使用して列値によってグループ化された連想配列を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。