Ich habe eine Online-Anwendung für die ich eine Art Dashboard (um den Leerraum zu verwenden) benötigen.mysql: Gruppenergebnisse, begrenzen sie und verbinden zu anderen Tabellen in einer Abfrage
Es gibt drei Tabellen für den Betrieb verwendet:
1.) categories: id, name
2.) entries: id, name, description, category_id, created, modified
3.) entryimages: id, filename, description, entry_id
auf dem Armaturenbrett i 4-5 Einträge angezeigt werden sollen (mit Miniaturbildern, so dass ich erfordern schließt sich an die entryimages Tabelle und der Tabelle Kategorien) für jede Kategorie.
ich durch einige Artikel zu lesen (und Threads auf so) wie diese: http://www.xaprb.com/blog/2006/12/07/how-to-select-the-firstleastmax-row-per-group-in-sql/
Aber ich immer noch nicht, es richtig zu machen, ich habe alle Kategorien zum ersten Extrakt versucht und für eine jede und jeder Kategorie bauen abfragen und mit "all union" anhängen, aber das funktioniert nicht. Die letzte Version von Code i verwendet:
foreach($categories as $id => $name)
{
$query .= "SELECT `entry`.`id`,
`entry`.`name`,
`entry`.`description`,
`entry`.`category_id`,
`entry`.`created`,
`entry`.`modified`,
`entryimages`.`filename`,
`entryimages`.`description`
FROM `entries` as `entry` LEFT JOIN `entryimages` ON `entryimages`.`entry_id` = `entry`.`id`
WHERE `entry`.`category_id` = $id ";
if($i < count($groups))
{
$query .= 'UNION ALL ';
}
$i++;
}
$result = mysql_query($query);
Weiß jemand, was das beste Recht vor, diese Operation zu erreichen?
Dank 1000
Danke, das tat es! =) –