Всем привет, никак не могу придумать как сделать, есть 2 таблицы, в одной храню Таблица1(фразу, частоту) в другой Таблица2(id фразы, позицию, дату), отношение hasMany, нужно сделать так чтобы вывод был таким

сейчас я беру search модель Таблица1 и через GridView делаю вывод фраз, предварительно я получаю последние несколько уникальних дат из Таблица2 через distinct, и потом я просто беру в GridView через функцию из модели получаю нужную позицию по определенному дню
'value' => function ($model) use ($distinct, $key) {
return $model->ProjectKeywordsPosition($distinct, $key);
}
все выходит как нужно, пагинация по десятку фраз (фраз может быть десятки тысяч), быстрая загрузка page, все нормально, но только не могу понят как сделать сортировку по столбцам дата1, дата2 и т.д., без этой сортировки вообще никак