这可能会更好地解释我想要做什么,如果任何人都可以提供帮助。在SQL中旋转结合两列
这是查询。
select sb.col_nm + '.' + sb.col_r_nm as 'Combined', mt.vlu_cd, at.tmplt_id
from templ_t at
inner join aud_bat_t b on b.tmp_id = at.tmp_id
inner join stats_dtl_t mt on mt.batch_id = b.batch_id
inner join lg_clmn_t sb on sb.lg_col_id = mt.lg_col_id
where at.tmplt_id = 6
order by sb.col_nm + '.' + sb.col_r_nm, mt.vlu_cd, at.tmplt_id
因此,我有前两行分支,现在查询返回的是例如。
**Combined vlu_cd tmplt_id**
prc_crf.premium 4567 6
prc_crf.premium 8574 6
prc_crf.premium 4789 6
prc_crf.sales 7777 6
prc_crf.sales 5487 6
prc_crf.sales 8888 6
prc_crf.sales 9874 6
lrt_lr_premium 7755 6
lrt_lr_premium 4874 6
lrt_lr_premium 9999 6
ptr_pr_sales 5555 6
ptr_pr_sales 3333 6
ptr_pr_sales 6523 6
ptr_pr_sales 1489 6
所以我想的是,当我转动的数据只显示以下其中被称为组合列的所有行成为与vlu_cd每个下行列出列。
任何人都可以使用查询帮助[透视这个数据在那里枢轴所有新栏目,而不必手动键入他们的。
很抱歉,如果这是混淆我是初学者所以,如果我不清楚如果你问我可以尝试更好地解释它。
所以从上面的结果,如果我可以像这样旋转数据,我不必在每一行中手动输入数据时。
prc_crf.premium prc_crf.sales lrt_lr_premium ptr_pr_sales
4567 7777 7755 3333
8574 5487 4874 6523
4789 8888 9999 1489
9874 5555
Microsoft SQL Server Management Studio –
你看过PIVOT吗? https://technet.microsoft.com/en-us/library/ms177410%28v=sql.105%29.aspx – Alex