Comece com uma consulta que obtenha todas as coleções que contêm o item selecionado:
SELECT collectionId
FROM wishLists
WHERE itemId = 876
A partir disso, você deseja obter todos os outros IDs de item nessas coleções.
SELECT itemId
FROM wishLists
WHERE collectionId IN (above query)
AND itemId != 876
Isso pode ser reescrito como uma junção:
SELECT a.itemId
FROM wishLists AS a
JOIN wishLists AS b ON a.collectionId = b.collectionId
WHERE a.itemId != 876 AND b.itemId = 876
Agora você pode contar as repetições disso para encontrar as mais comuns:
SELECT a.itemId
FROM wishLists AS a
JOIN wishLists AS b ON a.collectionId = b.collectionId
WHERE a.itemId != 876 AND b.itemId = 876
GROUP BY a.itemId
ORDER BY COUNT(*) DESC
Adicione um
LIMIT n
cláusula no final para mostrar os n principais itens.