select
decode(prop_key, 'durationTime', prop_prod_value, NULL ) as durationTime,
decode(prop_key, 'databaseAddr', prop_prod_value, NULL ) as databaseAddr,
decode(prop_key, 'port', prop_prod_value, NULL ) as port,
decode(prop_key, 'orderTriggerSwitch', prop_prod_value, NULL ) as orderTriggerSwitch
from t_system_prop ;
显示多列用关联查询。
或者先合并数据,然后行转列。
你这不就是在同一个表中的数据么,直接行转列即可
你只需要自己弄好排序规则,对应关系什么的就可以,也可以自行添加其他字段,不用排序
select * from (
select prop_key,prop_prod_value,ROW_NUMBER() over(partition by prop_key order by prop_prod_value) as rowid from t_system_prop
) a
pivot(max(prop_prod_value) for prop_key in ('durationTime','databaseAddr','port','orderTriggerSwitch')) p
给你个mssql的相关示例
select * from (
select number,type,ROW_NUMBER() over(partition by type order by number,name) as rid from master..spt_values where type<>'p'
) a
pivot(max(number) for [type] in (A,I,D,D2)) p