表头:客户编号 节点名称 结束时间_清洗 开始时间_清洗 节点说明 节点说明_清洗 审核人编号 预约号
我需要将节点名称是英文的行,全部替换成“客户前端操作”,中文不变。
同时同一客户编号下且节点名称是“客户前端操作”进行聚合,取 MAX( 结束时间_清洗 ),MIN(开始时间_清洗),其余不变。
最后输出客户编号 节点名称 结束时间_清洗 开始时间_清洗 节点说明_清洗 审核人编号 预约号。
求看看错在哪里啊。
SELECT '客户编号', -- 修改后的节点名称,只修改英文的节点名称 CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN '客户前端操作' ELSE `节点名称` END AS `节点名称`, -- 替换后的节点名称
-- 对 '客户前端操作' 的行执行聚合操作,其他行保留原值 -- 对 '客户前端操作' 的行,开始时间取最小,结束时间取最大 CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN MIN(`开始时间_清洗`) ELSE `开始时间_清洗` END AS `开始时间_清洗`, CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN MAX(`结束时间_清洗`) ELSE `结束时间_清洗` END AS `结束时间_清洗`, FROM `思迪CC流水数据处理V4`GROUP BY `客户编号`, `节点名称` `节点说明_清洗`, `开始时间_清洗`, `结束时间_清洗`, `审核人编号`, `预约号`
我需要将节点名称是英文的行,全部替换成“客户前端操作”,中文不变。
同时同一客户编号下且节点名称是“客户前端操作”进行聚合,取 MAX( 结束时间_清洗 ),MIN(开始时间_清洗),其余不变。
最后输出客户编号 节点名称 结束时间_清洗 开始时间_清洗 节点说明_清洗 审核人编号 预约号。
求看看错在哪里啊。
SELECT '客户编号', -- 修改后的节点名称,只修改英文的节点名称 CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN '客户前端操作' ELSE `节点名称` END AS `节点名称`, -- 替换后的节点名称
-- 对 '客户前端操作' 的行执行聚合操作,其他行保留原值 -- 对 '客户前端操作' 的行,开始时间取最小,结束时间取最大 CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN MIN(`开始时间_清洗`) ELSE `开始时间_清洗` END AS `开始时间_清洗`, CASE WHEN match(toString(`节点名称`), '^[A-Za-z]+$') THEN MAX(`结束时间_清洗`) ELSE `结束时间_清洗` END AS `结束时间_清洗`, FROM `思迪CC流水数据处理V4`GROUP BY `客户编号`, `节点名称` `节点说明_清洗`, `开始时间_清洗`, `结束时间_清洗`, `审核人编号`, `预约号`