Можете да замените стойностите с нещо подобно:
изберете case when rownum =1 then title else null end title, name, category_idfrom( SELECT c.title, i.name, i.category_id, @row:=(case when @prev=title и @precat =category_id след това @row else 0 край) + 1 като rownum, @prev:=title ptitle, @precat:=category_id pcat FROM елементи AS i INNER JOIN категории AS c ON c.id =i.category_id ред по i.category_id, c.title) srcorder по category_id, rownum
Вижте SQL Fiddle с демонстрация
Резултатът е:
<предварителен код>| ЗАГЛАВИЕ | ИМЕ | КАТЕГОРИЯ_ИД |--------------------------------| червено | ябълка | 1 || (нула) | кола | 1 || (нула) | хартия | 1 || жълт | лего | 2 || (нула) | банан | 2 || синьо | писалка | 3 |