En noget hacky måde at gøre det på er at efterbehandle resultatet af GROUP_CONCAT
:
substring_index(group_concat(s.title SEPARATOR ','), ',', 3) as skills
Dette forudsætter naturligvis, at dine færdighedsnavne ikke indeholder kommaer, og at deres mængde er rimelig lille.
En funktionsanmodning
for GROUP_CONCAT
for at understøtte en eksplicit LIMIT
klausulen er desværre stadig ikke løst.
OPDATERING :Som bruger Strawberry
påpeger, tabellen player_skills
skal have tuplen (player_id, skill_id)
som dens primære nøgle, ellers tillader skemaet, at den samme færdighed kan tildeles en spiller flere gange, i hvilket tilfælde group_concat
ville ikke fungere som forventet.