sql >> Database >  >> RDS >> Mysql

Scheid MYSQL-resultaten in afzonderlijke HTML-tabellen

De code hier vrij algemeen houden, maar vermoedelijk doe je momenteel zoiets als dit:

// output a table header
while ($row = mysql_fetch_assoc($members)) {
    // output a table row
}
// output a table footer

Als u periodiek een nieuwe tabel in die lus wilt beginnen, moet u een voorwaarde toevoegen om te bepalen wanneer u dat moet doen. Dus de structuur zou meer als volgt zijn:

$currentUser = 1;
// output a table header
while ($row = mysql_fetch_assoc($members)) {
    // output a table row
    if ($row["CurrentUser"] != $currentUser) {
        // output a table footer
        // output a table header
        $currentUser = $row["CurrentUser"];
    }
}
// output a table footer

Dit is nogal nonchalant, dus er kan hier een logische fout zitten waardoor een gedeeltelijke tabel wordt weergegeven onder bepaalde voorwaarden of iets van dien aard, toegegeven. Maar hopelijk wordt de essentie van het idee overgebracht. In wezen binnen de lus kun je de tabel sluiten en opnieuw openen (door alle informatie uit de gegevens die je hebt in die kop-/voetteksten te plaatsen) op basis van een voorwaarde. U hoeft alleen de gegevens bij te houden die in die toestand worden gebruikt. In dit geval is de "huidige" CurrentUser waarde van de resultaten.




  1. Triggers gebruiken als alternatief voor SQL-aggregatiefuncties?

  2. MySQL Hoe een nieuw record invoegen of een veld bijwerken, afhankelijk van of het bestaat?

  3. Hoofdlettergevoeligheid van ID forceren in orakel

  4. Tijdstempels opslaan in Postgres op basis van Java-datums