Я использую HEAP с базой данных MYSQL и хочу получить данные, поэтому я использую запрос ниже.
select SUBSTRING (name, 1, CHARINDEX ('*' , name) - 1) as name, duration
FROM (
SELECT b."identity" || '*' || session_id || '-' || a.user_id AS "name"
,MIN(time) AS "start"
,MAX(time) AS "last"
,((DATEDIFF('milliseconds', MIN(time), MAX(time))::FLOAT / 1000 ) / 60) AS "duration"
FROM abc_app_production.all_events a ,abc_app_production.users b
where a.user_id = b.user_id
AND b.user_type IS NOT NULL
AND b."identity" IS NOT NULL
AND b."identity" NOT IN ('Shubham')
AND time >= convert(datetime,'2018-10-01') AND time <= convert(datetime,'2018-11-01')
GROUP BY 1
)
Но я получаю дубликаты имени и продолжительности как:
name duration
John 0.27
John 0.5
Butler 0.0
Tom 29.64
Tom 10.00
Kathi Mike 0.0
Manish 4.38
Но я хочу добавить всю длительность в одну строку, которая повторяется как:
name duration
John 0.77
Butler 0.0
Tom 39.64
Kathi Mike 0.0
Manish 4.38
Я много пробовал, но получаю ошибки. Пожалуйста, помогите и спасибо заранее.