0% found this document useful (0 votes)
158 views4 pages

Answer 1:: Select

The document contains 8 SQL queries that analyze user and professional booking data over time. The queries group the data by month, calculate metrics like deliveries, active professionals, new vs repeat users, and professional churn. Joints are made between data tables to analyze trends month-to-month.

Uploaded by

ADITYA
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
158 views4 pages

Answer 1:: Select

The document contains 8 SQL queries that analyze user and professional booking data over time. The queries group the data by month, calculate metrics like deliveries, active professionals, new vs repeat users, and professional churn. Joints are made between data tables to analyze trends month-to-month.

Uploaded by

ADITYA
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Answer 1:

SELECT
CAST(BDATE_FINAL, DATE) AS MTH,
COUNT(USER_ID) AS DELIVERIES
FROM
TABLE T1
GROUP BY
1

Answer 2:

SELECT
CAST(BDATE_FINAL, DATE) AS MTH,
COUNT(DISTINCT RESPONDED_PRO_BOOKING) AS ACTIVE_PRO
FROM
Table T1
GROUP BY
1

Answer 3:
SELECT
CAST(BDATE_FINAL, DATE) AS MTH,
COUNT(USER_ID) AS DELIVERIES,
COUNT(DISTINCT RESPONDED_PRO_BOOKING) AS ACTIVE_PRO
COUNT(USER_ID)/ COUNT(DISTINCT RESPONDED_PRO_BOOKING) AS UTIL
FROM
TABLE T1
GROUP BY
1
Answer 4:

SELECT
CAST(T1.BDATE_FINAL, DATE) AS MTH,
COUNT(T1.DISTINCT RESPONDED_PRO_BOOKING)- COUNT(T2.DISTINCT RESPONDED_PRO_BOOKING) AS NEW_PRO
COUNT(T2.DISTINCT RESPONDED_PRO_BOOKING) AS REPEATPRO,
FROM
Table T1
LEFT JOIN Table T2
ON T1. RESPONDED_PRO_BOOKING=T2. RESPONDED_PRO_BOOKING
AND DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)>=1
GROUP BY 1

Answer 5:

SELECT
CAST(T1.BDATE_FINAL, DATE) AS MTH,
COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING)- COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING AS NEW_PRO
COUNT(T1.USER_ID)-COUNT(T2.USER_ID) AS NEW_PRO_DELIVERED
(COUNT(T1.USER_ID)-COUNT(T2.USER_ID))/ COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING)- COUNT(DISTINCT
T2.RESPONDED_PRO_BOOKING AS NEW_PRO_UTIL
COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING) AS OLD_PRO
COUNT(T2.USER_ID) AS OLD_PRO_DELIVERED,
COUNT(T2.USER_ID)/ COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING) AS OLD_PRO_UTIL
FROM
Table T1
LEFT JOIN Table T2
ON T1. RESPONDED_PRO_BOOKING=T2. RESPONDED_PRO_BOOKING
AND DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)>=1
GROUP BY 1
Answer 6:

SELECT
CAST(T1.BDATE_FINAL, DATE) AS MTH,
CASE WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)=0 THEN ‘NEW’
WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)=1 THEN ‘Repeat’
WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)>1 THEN ‘Reactive’
ELSE ERROR
END AS PRO_STATE,
COUNT(DISTINCT T1. RESPONDED_PRO_ BOOKING) AS PRO_COUNT
FROM
Table T1
LEFT JOIN Table T2
ON T1. RESPONDED_PRO_ BOOKING=T2. RESPONDED_PRO_ BOOKING
GROUP BY 1,2

Answer 7:

SELECT
CAST(BDATE_FINAL, DATE) AS MTH,
COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING) AS ACTIVE_PRO,
COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING)- COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING) AS CHURN_PRO,
COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING)- COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING)/ COUNT(DISTINCT
T1.RESPONDED_PRO_BOOKING) AS CHURN_PERC
FROM
Table T1
LEFT JOIN Table T2
ON T1. RESPONDED_PRO_BOOKING=T2. RESPONDED_PRO_BOOKING AND DATEDIFF(Month, T1.BDATE_FINAL, T2.
BDATE_FINAL)=-1
GROUP BY
1
Answer 8:
SELECT
CAST(T1.BDATE_FINAL, DATE) AS MTH ,
CASE WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)=0 THEN ‘NEW’
WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)=1 THEN ‘Repeat’
WHEN DATEDIFF(Month, T1.BDATE_FINAL, T2. BDATE_FINAL)>1 THEN ‘Reactive’
ELSE ERROR END AS PRO_STATE,
COUNT(T1. RESPONDED_PRO_ BOOKING) AS PRO_COUNT
COUNT(DISTINCT T1.RESPONDED_PRO_BOOKING)- COUNT(DISTINCT T2.RESPONDED_PRO_BOOKING) AS CHURN_PRO
FROM
Table T1
LEFT JOIN Table T2
ON T1. RESPONDED_PRO_BOOKING=T2. RESPONDED_PRO_BOOKING AND DATEDIFF(Month, T1.BDATE_FINAL, T2.
BDATE_FINAL)=-1
GROUP BY
1,2

You might also like