Как реализовать подобный вывод с помощью php или jquery?
// исходный массив
$artists = array('ffff', 'cccc', 'аaaa');

// сортируем и получаем: аaaa, cccc, ffff
asort($artists);

// цикл "для каждого артиста"
foreach($artists as $artist){

  // отрезаем первую букву и делаем её заглавной
  $first_letter = mb_strtoupper(substr($artist, 0, 1)); 

  // добавляем в массив список артистов на букву $first_letter
  $output[$first_letter][] = $artist; 

}
$data = $db->query(SELECT * FROM .... ORDER BY `name` ASC)->fetchAll(PDO::FETCH_ASSOC)
Пережевываем полученный массив$result = array();
foreach($data as $d)
{
$first = mb_strtoupper($d['name']{0});
if(isset($result[$first]))
array_push($result[$first], $d);
else
$result[$first] = array($d);
}
----
Во вьюхе:<?php foreach($result as $char=>$values): ?>
<tr>
<td class='большая буква'><?php echo $char ?></td>
.........а тут уже все названия будут в массиве $values, как это все выводить - дело верстки.........
</tr>
<?php endforeach;?>