Project 2 Overview
Project Overview
Project Part 2 – Ad Hoc Reporting
As an analyst, you are likely to receive a number of one-off requests to provide answers to a variety of business questions. These requests can be time-sensitive and demand that you turn around a summary of your findings quickly. You will also have to juggle a number of these requests at the same time. This means that the deliverable for these types of ad hoc requests will usually be a short and concise summary of your findings. These short reports can include recommendations or insights if requested, but in other cases, they will only require hard numbers or other factual findings.
This style of analysis allows you to extract insights from smaller sections of data as needed to answer more defined and focused business questions. It allows you to formulate specific insights for your organization when they are needed, as opposed to a more formal report such as a presentation or quarterly newsletter”
In this Project Part, you will respond to multiple ad hoc requests from varying teams or persons in the LetsMeet organization. You will write a series of queries to answer their questions and summarize your findings in the provided 1_summary_report.sql file.
The goal of this project is to help you get comfortable breaking down and responding to an ad hoc request. You will be given guiding questions and instructions to assist you in thinking through the asks and to help guide the queries you are writing.
Summary Report Examples
The following are three examples of ad hoc requests you might get as an analyst and examples of how you might communicate your findings (Note: These are not the same requests you will respond to in the project). In the real world, these short reports would likely be included in an e-mail, but for the sake of this Project, you will organize your findings as multi-line comments in a SQL file.
REPORTING JUST THE FACTS:
The Request:
Good morning!
I need to send a quick status update to our Growth Team this morning on how our groups are doing. I’d like to know the average, minimum, and maximum number of members in our LetsMeet groups.
Thanks for your help!
Cat
The Report:
Since Cat simply asked you to report back with some numbers, your response might include a bullet-pointed list like the following:
— On average how many members do LetsMeet groups have?
/*
– LetsMeet groups have an average of 732 members.
– The group with the most members currently has 23380 members.
– The group with the least members currently has 1 member.
*/
REPORTING QUICK INSIGHTS:
The Request:
Hey there,
Engineering is looking into a bulk event uploading feature to support some of our more active groups, but before they add the feature they need some information. Do you have any insights into how LetsMeet groups are uploading their events currently?
Look forward to hearing your thoughts!
Isabella
The Report:
Isabella didn’t provide too many details about the numbers she is interested in but did ask you to provide some insights into how users are uploading their events. After performing a short exploratory analysis, the information you communicate back to her might look something like the following snippet:
— How are LetsMeet groups creating their events? In bulk or one at a time?
/*
– A significant number of groups are creating multiple events on a single day.
– The most common number of events created per day is approximately 50.
– There appears to be a relationship between the number of events a group hosts and the number of
events they upload at one time.
– Groups creating 50 events in a day typically host more events overall.
– Groups with less frequently occurring events typically create them one at time.
*/
MAKING A RECOMMENDATION:
The Request:
Hi again! Thanks for the information on your bulk event uploading findings. As a follow-up, can you make some recommendations on groups we should target for beta testing the bulk event uploading feature? I’d love to hear your thoughts once you’ve had a chance to dig deeper into the data. Can you get this to me by EOD today?
Thanks again,
Isabella
The Report:
In this case, you need to not only provide insights into the data but also make recommendations based on your findings. This might look something like the following:
— Recommendations for beta testing
/*
– Chicago Area Toastmasters.
– They have created the most events of any of the groups of LetsMeet.
– They have created 1061 events.
– They frequently upload 50 events at a time
– Business Events NY group.
– They have fewer events overall at 36.
– They have been bulk uploading their events consistently in groups of 12.
– Perhaps this feature could encourage them to host more events.
– Alternative Fun Stuff To Do NYC.
– They have created 17 events in total.
– Each event was created on a different day.
– Based on the data, they are consistently creating regular events and may be good candidates for
bulk uploading.
*/
Ready, Set, Report!
You’re now ready to start answering your own ad hoc requests. Time to open up your inbox and MySQL workbench and start analyzing!
Start Project
Ready, Set, Report!
You’re now ready to start answering your own ad hoc requests. Time to open up your inbox and MySQL workbench and start analyzing!
The Requests
Your LetsMeet inbox is filling up quickly with requests for data and insights!
You currently have three requests in your inbox awaiting your response:
Each of these requests will require a different level of analysis and insights or recommendations. Follow the instructions in each of the steps below to write queries and respond to the requests accordingly.
While completing your project, stop every now and then to save your work. This will ensure that your work won’t be lost!
Request #1: Toastmasters Events ????
The first e-mail in your inbox is from the CEO Evelyn.
Good Morning,
As you might have heard around the office, I’m an avid member of Toastmasters, an international public speaking organization. I have a presentation at our local Chicago event tonight and I want to add some figures to my slides to emphasize the connection between Toastmasters and LetsMeet. Can you get back to me with the following by this afternoon:
– The total number of Toastmasters events on Lets Meet
– The number of Toastmasters events per city.
I really appreciate this!
Evelyn
This request seems straightforward, so it’s time to get down to work!
To get started, follow these steps:
1. Navigate to 2_toastmaster.sql
DON’T SEE 2_TOASTMASTER.SQL? CREATE THE SQL FILE YOURSELF.
2. To begin with, you should find all the events that include the word, Toastmaster. You can use string manipulation to return all event names that include “Toastmaster” or “toastmaster.”
3. Now that you have the Toastmasters events, write a second query to display them alongside the cities in which they are hosted.
4. Lastly, write a third query to give the exact counts for how particular cities host Toastmasters events.
5. Save your script by clicking File > Save Script
5. Return to 1_summary_report.sql and summarize your findings for Evelyn. Since she only asked for the hard numbers, there is no need to provide additional recommendations or insights.
Request #2: Leveling Off Of Member Growth ????
The next request in your inbox is from a member of the LetsMeet Growth team. They are part of the Sales team that is responsible for growing the membership of LetsMeet year-over-year.
Hey there,
I’m working on a report on membership growth to date for Cat and after scanning the latest numbers noticed that it appears membership growth might be leveling off.
I’m wondering if you can dig into the year-over-year membership growth for the whole organization. I’m worried there might be some errors in our data collection.
Engineering has already informed me of at least one error regarding the city information in our grp_member table. It looks like you might need to amalgamate some smaller suburbs into into their wider geographic area (i.e. East Chicago and West Chicago should just be Chicago). I’ll send you an attachment with our required breakdown.
Please include any insights into why membership doesn’t seem to be growing like it used to.
Let me know if you can get to this by end of day.
Cheers,
Sammy
In their follow up e-mail Sammy included a helpful reminder that the joined column in the grp_member table represents the date a member joined a specific group, not the date they joined LetsMeet. They suggest instead that you use the date a member joined their first group as a proxy for when they joined the site.
To get started, follow these steps:
1.Navigate to the SQL file named 3_growth.sql.
DON’T SEE 3_GROWTH.SQL? CREATE THE SQL FILE YOURSELF.
2. Write a query that shows the growth of LetsMeet over the years based on the number of members who joined each year.
HINT
3. In the grp_member table, use the appropriate DML to rename the smaller cities to the name of their larger urban areas. Based on the attachment from Sammy, they should be combined as follows:
HINT
4. Time to see if there are any differences in year over year growth by city! Write three new queries that show the annual growth of LetsMeet for the larger geographical areas of Chicago, San Francisco, and New York.
HINT
5. You decide you want to dig deeper into membership growth specifically in 2017, the year when growth in membership seems to slow the most. Write a query to examine the month by month growth for LetsMeet in 2017. What do you notice about the resulting table?
HINT
6. Save your script by clicking File > Save Script
7. Return to 1_summary_report.sql and summarize your findings for the Growth Team in a few bullet points. This should include your overall findings on year-over-year growth and insights into why membership growth appears to be leveling off, including any potential data anomalies.
Request #3: Marketing Campaign Recommendations ????
You’re so close to clearing your inbox! The last request you need to address is from marketing.
Afternoon,
We are working on an exciting new marketing campaign for LetsMeet to attract new groups to the platform.
We are hoping to feature five groups in the campaign that really showcase the popularity and diversity of the LetsMeet group community.
Are you able to recommend groups for us to feature? Ideally the groups selected:
– Are highly rated.
– Have a significant number of members.
– Are representative of a variety of categories.
I’m looking for recommendations for three groups from New York, one from Chicago and one from San Francisco.
If you can send me your recommendations and supporting data by end of week, that would be greatly appreciated!
Yan
It sounds like the marketing team hopes this campaign will expand the number and the variety of groups on the platform!
It’s a big ask, but you’re on it!
To get started, follow these steps:
1. Navigate to the SQL file named 4_feature_groups.sql.
2. You should start by examining the breakdown of ratings to determine if it’s a reliable measure of group popularity.
Write a query to break down the groups by ratings, showing the count of groups with no ratings, as well as a count of each of the following ranges: 1-1.99, 2-2.99, 3-3.99, 4-4.99, and 5.
Note: If a group has no ratings, its rating will appear as “0” in the ratings column of the grp table.
HINT
Guiding Questions To Consider
2. Instead of focusing on rating alone, you should also look at membership numbers. Of the groups who have perfect 5 star ratings, write a query to find those with the most members.
3. Adjust your previous query to include the city for each group to ensure you are selecting three groups: one from New York, one from Chicago, and one from San Francisco.
HINT
4. Before making your selection, you need to ensure you are choosing from a wide variety of groups. Make sure your query includes the category information before making your recommendations.
Guiding Questions and Considerations:
5.Save your script by clicking File > Save Script
6. Return to 1_summary_report.sql and make your recommendations to the Marketing Team. Each group recommendation you make should include the data to support how that particular group meets the requirements of the marketing team’s campaign.
You Did It! ????
You are officially at Inbox Zero!
You should have four SQL files to submit:
Project, Part 2 – Ad Hoc Reports RubricsExceed (A)Achieve (B)Emerging (C)Incomplete (D/F)
1
File Organization
Required files are present and appropriately named. * 1_summary_work * 2_toastmaster * 3_growth * 4_feature_groups
Required files are present and appropriately named, with some exceptions. * 1_summary_work * 2_toastmaster * 3_growth * 4_feature_groups
Required files are present and appropriately named with several exceptions. * 1_summary_work * 2_toastmaster * 3_growth * 4_feature_groups
Required files are missing or are not appropriately named.
2
Query Correctness
All queries run without error and produce the correct output.
Most queries run without error and produce the correct output most of the time.
Some queries run without error and produce the correct output some of the time.
Queries are missing or do not run properly. Output is missing or is incorrect.
3
SQL Syntax Best Practices
SQL Syntax always uses the following best practice guidelines: * Capitalization * Indentation and line breaks * Semicolons
SQL Syntax mostly uses the following best practice guidelines: * Capitalization * Indentation and line breaks * Semicolons
SQL Syntax sometimes uses the following best practice guidelines: * Capitalization * Indentation and line breaks * Semicolons
SQL Syntax does not adhere to best practice guidelines.
4
Insights and Recommendations
Insights and recommendations are: * Clear and concise * Relevant * Properly formatted * Supported by data
Insights and recommendations are mostly: * Clear and concise * Relevant * Properly formatted * Supported by data
Insights and recommendations are sometimes: * Clear and concise * Relevant * Properly formatted * Supported by data
Insights are missing or are unclear, inaccurate, irrelevant, or not supported by data.
5
Comments
Comments describe each query’s purpose and adhere to the following guidelines (when necessary): * Multi-line * Wrapped
Comments mostly describe each query’s purpose and adhere to the following guidelines (when necessary) with some exceptions: * Multi-line * Wrapped
Comments partially describe each query’s purpose and adhere to the following guidelines (when necessary), with several exceptions: * Multi-line * Wrapped
Comments are missing or do not describe each query’s purpose and do not adhere to the guidelines (when necessary).