Hola messer,
Esa es la logica que tu como programador debes de implementar, el motor de MySQL no va a hacer todo por ti, por eso tu debes como programador ajustar esa logica, la idea es que tengas un "puntero" de cual es el ultimo producto mostrado, y vas dibujando las filas de color / precio, por cada "vuelta" del ciclo checas tu puntero, si sigue siendo el mismo producto lo dejas igual hasta que el producto sea diferente entonces imprimes la fila nuevamente.
Un ejemplo:
Código php:
Ver original$previousProduct = '';
if( $row['producto'] != $previousProduct ) {
echo $row['producto'] . "<br />";
$previousProduct = $row['producto'];
}
printf( "Color %s, precio %s", $row['color'], $row['precio'] ); }
Saludos.