आप रैंक() के समान दृष्टिकोण का उपयोग कर सकते हैं और फिर नए PIVOT फ़ंक्शन का उपयोग निम्नानुसार कर सकते हैं:
with cusCte as(
select cusid,cusph1,RANK() over (partition by cusid order by cusph1) r
from #cusphone)
SELECT cusid, [1] AS C1, [2] AS C2, [3] AS C3
FROM
(SELECT cusid,cusph1,r
FROM cusCte) p
PIVOT
(
MIN (cusph1)
FOR r IN
( [1], [2], [3] )
) AS pvt;