🙌
Hands-On Leetcode Database Solution with Hive SQL
(Online Course)Learning SQL with meMy BlogAbout meFollow me on FBFollow my IG
  • INTRODUCTION
    • About This Book
    • 作者簡介
  • Exercise 1:185.Department Top Three Salaries
    • Hive Solution
  • Exercise 2:262. Trips and Users
    • Hive Solution
  • Exercise 3:569.Median Employee Salary
    • Hive Solution
  • Exercise 4:571.Find Median Given Frequency of Numbers
    • Hive Solution
  • Exercise 5:579.Find Cumulative Salary Of An Employee Problem
    • Hive Solution
  • Exercise 6:601.Human Traffic of Stadium
    • Hive Solution
  • Exercise 7:615.Average Salary: Departments VS Company
    • Hive Solution
  • Exercise 8:618.Students Report By Geography
    • Hive Solution
  • Exercise 9:1097.Game Play Analysis V
    • Hive Solution
  • Exercise 10:1127.User Purchase Platform
    • Hive Solution
  • Exercise 11:1159.Market Analysis II
    • Hive Solution
  • Exercise 12:1194.Tournament Winners
    • Hive Solution
  • Exercise 13:1225.Report Contiguous Dates
    • Hive Solution
  • Exercise 14:1336.The number of transactions per visit
    • Hive Solution
  • Exercise 15:1369.Get The Second Most Recent Activity
    • Hive Solution
  • Exercise 16:1384.Total Sales Amount by Year
    • Hive Solution
  • Exercise 17:1412.Find the Quiet Students in All Exams
    • Hive Solution
  • Exercise 18:1479. Sales by Day of the Week
    • Hive Solution
  • Exercise 19:1635. Hopper Company Queries I
    • Hive Solution
  • Exercise 20:1645. Hopper Company Queries II
    • Hive Solution
  • Exercise21 :1651. Hopper Company Queries III
    • Hive Solution
  • Exercise 22:1767.Find the Subtasks That Did Not Execute
    • Hive Solution
  • Exercise 23:1892.Page Recommendations II
    • Hive Solution
  • Exercise 24:1917.Leetcodify Friends Recommendations
    • Hive Solution
  • Exercise 25:1919.Leetcodify Similar Friends
    • Hive Solution
  • Exercise 26:1972.First and Last Call On the Same Day
    • Hive Solution
  • Exercise 27:2004.The Number of Seniors and Juniors to Join the Company
    • Hive Solution
  • Exercise 28:2010.The Number of Seniors and Juniors to Join the Company II
    • Hive Solution
Powered by GitBook
On this page
  1. Exercise21 :1651. Hopper Company Queries III

Hive Solution

3.Hive Solution

SELECT 
    substr(x.yyyymm,6,2) as mm,
    round((dis1+dis2+dis3)/3,2) as average_ride_distance ,
    round((dur1+dur2+dur3)/3,2) as average_ride_duration
FROM
(
SELECT  
	t0.yyyymm,
	coalesce(t1.ride_distance,0) as dis1,
	coalesce(lead(t1.ride_distance,1)over(order by t0.yyyymm),0) as dis2,
	coalesce(lead(t1.ride_distance,2)over(order by t0.yyyymm),0) as dis3,
	coalesce(t1.ride_duration,0) as dur1,
	coalesce(lead(t1.ride_duration,1)over(order by t0.yyyymm),0) as dur2,
	coalesce(lead(t1.ride_duration,2)over(order by t0.yyyymm),0) as dur3
FROM  
  ( select '2020-01' as yyyymm
    union select '2020-02' as yyyymm
    union select '2020-03' as yyyymm
    union select '2020-04' as yyyymm
    union select '2020-05' as yyyymm
    union select '2020-06' as yyyymm
    union select '2020-07' as yyyymm
    union select '2020-08' as yyyymm
    union select '2020-09' as yyyymm
    union select '2020-10' as yyyymm
   -- union select '2020-11' as yyyymm
   -- union select '2020-12' as yyyymm  
    ) t0
left join
(
select substr(b.requested_at,1,7) as requested_month ,
  coalesce(sum(a.ride_distance) ,0) as ride_distance,
  coalesce(sum(a.ride_duration) ,0) as ride_duration
from 
(select * from leetcode.ex_1635_acceptedrides ) a 
		join (select * from leetcode.ex_1635_rides ) b ON  a.ride_id=b.ride_id 
  group by substr(b.requested_at,1,7)  
 ) t1 ON t0.yyyymm =t1.requested_month
  	) x 
  	;

PreviousExercise21 :1651. Hopper Company Queries IIINextExercise 22:1767.Find the Subtasks That Did Not Execute

Last updated 3 years ago