表结构如上,因为 相同,现在需要把CONTAINER_CODE和BILL_CODE相同的行,的到达时间合并为自定义的列
实现类似这样的效果:
Oracle实现的思路是:对这两个字段group by分组,多列则按条件查询,用到decode函数
实现SQL如下:
select t.container_code,t.bill_code,
min(decode(status, 10, create_time)) as 成功时间1,
min(decode(status, 20, create_time)) as 开始时间2,
min(decode(equip_type, 20, arrive_date)) as 开始时间3,
max(decode(equip_type, 20, arrive_date)) as 完成时间4
from EIS_NOTICE t where t.bill_code in ('000GEO') group by t.container_code,t.bill_code