Aqui está o código PHP:
$query = mysql_query("SELECT date, query FROM table6 ORDER BY date DESC LIMIT 20");
$group_date = null;
while ($row = mysql_fetch_assoc($query)) {
if ($group_date !== substr($row["date"], 0, 10)) {
$group_date = substr($row["date"], 0, 10);
echo "<h1>$group_date</h1>\n";
}
echo "${row['query']}<br>\n";
}
Saída:
Observe que, embora esse código "agrupe" linhas por uma coluna, ele pode ser facilmente estendido para agrupar linhas por várias colunas. Deixado como exercício.