[英]Oracle SQL Converting Rows Into Column for similar fields
我有一个包含两个字段的表
EMPLID | STDNT_GROUP
A1 H025
A1 M050
A1 T100
A2 H070
A2 M075
A3 H100
A3 T025
Output
Emplid | Hos | Tut | Mess
A1 H025 T100 M050
A2 H070 NULL M075
A3 H100 T025 NULL
我想将行转换为列。 如果一个 emplid 的组以 H 开头,然后是 Hos,以 T 开头,然后是 Tut,如果是 M,则为 Mess。 这可能使用 sql
Select emplid, max(case when substr(STDNT_GROUP,1) like 'H%' then STDNT_GROUP else ' ' end ) Hostel,
max(case when substr(STDNT_GROUP,1) like 'T%' then STDNT_GROUP else ' ' end ) Tuition,
max(case when substr(STDNT_GROUP,1) like 'M%' then STDNT_GROUP else ' ' end ) Mess
from table a
group by emplid
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.