sql >> Database >  >> RDS >> Mysql

Hoe meerdere queryresultaten om het querynummer te verminderen?

PDO is iets meer dan iedereen denkt. Het heeft bijvoorbeeld een geweldige functie voor u, genaamd PDO::FETCH_GROUP .

Om nog maar te zwijgen over andere kleine verbeteringen die uw code aanzienlijk korter kunnen maken.

$r = $handler->query("SELECT confirmed, c.* FROM comments c")->fetchAll(PDO::FETCH_GROUP);

Is alle code die je nodig hebt.

hier selecteert u de confirmed veld eerst en vertel PDO dan om de resultaten te groeperen (of "vermenigvuldigen") op basis van de waarde.

En nu kunt u uw opmerkingen afdrukken waar u maar wilt

// Awaiting Comments
foreach($r[0] as $r_) {
    echo "<li>$r_[title]</li>";
}

// Confirmed comments
foreach($r[2] as $r_) {
    echo "<li>$r_[title]</li>";
}

Of, om het in één lus te maken

$titles = [
    0 => 'Awaiting Comments',
    2 => 'Comments waiting confirmation',
    1 => 'Confirmed Comments',
];

foreach ($titles as $code => $title)
{
    echo "<h3>$title</h3>";
    foreach($r[$code] as $r_) {
        echo "<li>$r_[title]</li>";
    }
}


  1. magento tabel sales_flat_order veld protect_code uitleg

  2. CDC inschakelen op een reeks tabellen OF inschakelen op alle tabellen in een database in SQL Server - SQL Server-zelfstudie

  3. Rails-fout bij het installeren van mysql2 (mysql2-0.3.20)

  4. Hoe een identiteitskolom aan tabel toe te voegen door TSQL en GUI in SQL Server - SQL Server / T-SQL-zelfstudie, deel 40