--根据CVGUID PromotionCode 分组 想得到一列,
--如果desc0 的值以买金额为开头 那么值就是 desc0=销售金额对应的salesvolume 的值
--如果desc0 的值以买数量为开头 那么值就是 desc0=销售数量 对应的salesvolume 的值
;WITH cet AS (
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'R201506180001'ElementRelationCode, '买金额送金额'DESC0, 1.0000 SalesVolume union all
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'R201506230003' ,'买数量送数量', 1.0000 union all
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'R201507310001', '买数量送数量', 5.0000 union all
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'T201506080013', '销售数量', 5000.0000 union all
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'T201506180001', '销售金额', 20.0000 union all
select '6F774D1C-C463-42CF-9E14-E9646B371C2A' CVGUID, 'P201506080005'PromotionCode, 'T201506190001', '发票金额', 12.0000
)
SELECT * FROM cet
如图