Heim >Backend-Entwicklung >PHP-Tutorial >Wie rufe ich mit PDO nach Spaltenwerten gruppierte assoziative Arrays ab?

Wie rufe ich mit PDO nach Spaltenwerten gruppierte assoziative Arrays ab?

Linda Hamilton
Linda HamiltonOriginal
2024-10-22 07:38:31219Durchsuche

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

Abrufen eines nach Spaltenwerten gruppierten assoziativen Arrays mit PDO

Problem:
Einen Datensatz effizient organisieren Wenn es sich um ein assoziatives Array handelt, das nach den Werten einer bestimmten Spalte gruppiert ist, muss eine Möglichkeit gefunden werden, die unnötige Verschachtelungsebene zu umgehen, wenn der FETCH_GROUP|PDO::FETCH_ASSOC-Modus von PDO verwendet wird.

Lösung:
Durch die Nutzung der Kombination der Modi PDO::FETCH_GROUP und PDO::FETCH_UNIQUE kann die gewünschte Array-Struktur mit einem einzigen Abrufvorgang erreicht werden.

Der folgende Codeausschnitt veranschaulicht diesen Ansatz:

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

Der PDO::FETCH_GROUP-Modus gruppiert die Zeilen nach den Werten der ersten Spalte, während PDO::FETCH_UNIQUE sicherstellt, dass nur die erste Zeile für jeden eindeutigen Gruppenwert im Ergebnis enthalten ist.

Als Ergebnis enthält das $result-Array die folgende Struktur:

<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>

Dadurch wird die unnötige Verschachtelungsebene eliminiert, die bei der alleinigen Verwendung von PDO::FETCH_GROUP|PDO::FETCH_ASSOC auftritt, was eine effizientere und unkompliziertere Lösung ermöglicht Möglichkeit, nach Spaltenwerten gruppierte assoziative Arrays abzurufen.

Das obige ist der detaillierte Inhalt vonWie rufe ich mit PDO nach Spaltenwerten gruppierte assoziative Arrays ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn