आप क्वेरी को गतिशील रूप से बना सकते हैं:
declare @installment_list varchar(max)
select @installment_list = IsNull(@installment_list,'') +
'[' + cast(Installment as varchar(32)) + '],'
from #tbl
group by Installment
-- Remove last comma
set @installment_list = left(@installment_list,len(@installment_list)-1)
declare @dynquery varchar(max)
set @dynquery = 'select * ' +
'from #tbl ' +
'pivot ( ' +
' max([Installment]) ' +
' for [Installment] ' +
' in (' + @installment_list + ') ' +
') as pvt'
exec (@dynquery)
ध्यान दें कि तालिका चर निष्पादन () के अंदर दिखाई नहीं दे रहे हैं, इसलिए मैं एक अस्थायी चर (#tbl के बजाय @tbl) में बदल गया हूं।