Вы можете попробовать с опцией PIVOT. Повернуть таблицу в MySQL
В words.map вы разбиваете каждое данное предложение на список слов, а затем, для каждого из этого списка, вы проверяете, есть ли все элементы в этом списке в этом списке, что всегда верно. В этом примере нет смысла использовать foreach. Он возвращает Unit, который похож на void в java.
Может быть, вы хотели что-то подобное?
fun hasAnagrams(words: List<String>): Boolean = words
.map { it.split("").sorted() } // split given words into list of chars and sort
.distinct() // get only unique lists
.size != words.size // check if number of unique lists is equal to number of words in input list