Если вы используете язык сценариев, такой как PHP, для обработки результатов, вы можете ограничить число результатов, отображаемых для каждого клиента после выполнения запроса.Настройте массив для хранения всех результатов, настройте другой массив для хранения количества результатов на одного клиента и прекратите добавлять результаты запроса в набор результатов после того, как число превысит ваш лимит, например:
$RESULTS = array();
$COUNTS = array();
$limit = 2;
$query = "SELECT customer_id, customer_name, customer_comment FROM customers ORDER BY RAND()";
$request = mysql_query($query);
while ($ROW = mysql_fetch_assoc($request))
{
$c = $ROW['customer_id'];
$n = $COUNTS[$c];
if ($n<$limit)
{
$RESULTS[] = $ROW;
$COUNTS[$c]++;
}
}
Это гарантирует, что только два комментария для каждого клиента будут отображаться в случайном порядке или, как вы хотите, остальные будут выброшены.Конечно, вы извлекаете ВСЕ результаты, но это (возможно) быстрее, чем сложное соединение.