Wie verwende ich PDO, um ein nach Spaltenwerten gruppiertes assoziatives Array abzurufen?

Barbara Streisand
Freigeben: 2024-10-22 07:37:31
Original
642 Leute haben es durchsucht

How to Use PDO to Retrieve an Associative Array Grouped by Column Values?

Verwenden von PDO zum Abrufen eines nach Spaltenwerten gruppierten assoziativen Arrays

Bei Datenbankoperationen ist es häufig erforderlich, in bestimmten Formaten organisierte Daten abzurufen . Ein solches Format ist ein assoziatives Array, das nach den Werten einer bestimmten Spalte gruppiert ist. Dies ermöglicht einen einfachen Zugriff auf Daten basierend auf der angegebenen Spalte. Hier finden Sie eine Diskussion darüber, wie Sie dies mithilfe von PDO erreichen können.

Problem:Gegeben sei eine Tabelle mit den folgenden Daten:

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

Ziel: Rufen Sie die Daten im folgenden Format ab:

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
    )
)
Nach dem Login kopieren

Lösung:Um dies zu erreichen, können Sie die fetchAll-Methode von PDO mit den folgenden Modi verwenden:

$pdo->query('SELECT * FROM employee')->fetchAll(PDO::FETCH_GROUP|PDO::FETCH_UNIQUE);
Nach dem Login kopieren

Die Der FETCH_GROUP-Modus gruppiert die Ergebnisse nach den Werten der ersten Spalte. Der FETCH_UNIQUE-Modus beschränkt die Ergebnisse auf eine einzelne Zeile für jeden eindeutigen Wert in der Gruppierungsspalte. Als Ergebnis erhalten Sie ein assoziatives Array, bei dem die Spaltenwerte als Schlüssel und die übrigen Spalten als Werte dienen.

Beispielausgabe:

Array
(
  [Antony] => Array
    (
      [0] => (age: 34, sex: M, position: programmer)
    )
  [Sally] => Array
    (
      [0] => (age: 30, sex: F, position: manager)
    )
  [Matthew] => Array
    (
      [0] => (age: 28, sex: M, position: designer)
    )
)
Nach dem Login kopieren

Beachten Sie, dass die Die Ausgabe enthält Arrays mit einer einzelnen Zeile für jede Gruppe. Dies liegt daran, dass der FETCH_UNIQUE-Modus sicherstellt, dass nur die erste Zeile für jede Gruppe abgerufen wird.

Das obige ist der detaillierte Inhalt vonWie verwende ich PDO, um ein nach Spaltenwerten gruppiertes assoziatives Array abzurufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!