logo

10 Globant SQL Interview Questions (Updated 2024)

Updated on

March 1, 2024

At Globant, SQL is crucial across their portfolio of companies for doing product analytics and managing customer databases. Unsurprisingly this is why Globant often tests SQL query questions during interviews for Data Analyst, Data Science, and BI jobs.

So, to help you ace the Globant SQL interview, here’s 10 Globant SQL interview questions – how many can you solve?

10 Globant SQL Interview Questions

SQL Question 1: Analyze Employee Performance

Globant is a global IT and software development company. As part of their efforts to improve productivity and performance, they keep records of employees' completed tasks.

Your task is to find out each employee's average and maximum completed tasks per week for the year 2021. Assume that each record in the table 'tasks' corresponds to a task completed by an employee.

Example Input:
task_idemployee_idcompletion_date
15236701/15/2021
17326701/22/2021
73254201/25/2021
19854206/30/2021
77726707/05/2021
52149207/01/2021
52939207/15/2021

Your output should be in the following format:

Example Output:
employee_idaverage_tasks_per_weekmax_tasks_per_week
67<average_value><max_value>
42<average_value><max_value>
92<average_value><max_value>

Please replace and with the correct results.

Answer:

You would solve the problem with the following SQL query:


This solution starts by using a CTE to group tasks by weeks for each employee. Then, for each employee, it calculates the average and maximum number of tasks per week with window functions. It's important to use the "OVER" keyword with "PARTITION BY" to execute the window function for each employee separately. Then we order our final output by employee_id.

For more window function practice, solve this Uber SQL Interview Question within DataLemur's online SQL code editor:

Uber SQL problem

SQL Question 2: Finding Most Active Customers

The sales team at Globant wants to identify the most active customers based on the number of orders they've placed within the last 6 months. Accomplish this by writing a SQL query that filters the customer records database to pull the top 5 customers who have placed the highest number of orders using the and tables.

Example Input:
customer_idfirst_namelast_nameemail_addressjoin_date
101JohnDoejohn.doe@example.com2015-10-05
102JaneSmithjane.smith@example.com2018-03-15
103BobJohnsonbob.johnson@example.com2012-06-20
104AliceBrownalice.brown@example.com2020-07-22
105CharlieWilliamscharlie.williams@example.com2017-04-08
Example Input:
order_idcustomer_idorder_dateproduct_idquantity
2011012022-06-1020012
2021022022-06-1130021
2031032022-06-1220013
2041012022-06-1330022
2051052022-06-1440031

Answer:


This query filters the table for records within the last 6 months. It then groups the results by and counts the number of orders each customer has made by counting the entries for each customer. The results are sorted in descending order by the count of orders, and only the top 5 records are returned.

SQL Question 3: What is a foreign key?

A foreign key is a column or group of columns in a table that refers to the primary key in another table. The foreign key constraint helps maintain referential integrity between the two tables.

Let's examine employee data from Globant's HR database:

:

+------------+------------+------------+------------+ | employee_id| first_name | last_name | manager_id | +------------+------------+------------+------------+ | 1 | Aubrey | Graham | 3 | | 2 | Marshal | Mathers | 3 | | 3 | Dwayne | Carter | 4 | | 4 | Shawn | Carter | | +------------+------------+------------+------------+

In this table, serves as the primary key and functions as a foreign key because it links to the of the employee's manager. This establishes a relationship between Globant employees and their managers, allowing for easy querying to find an employee's manager or see which employees report to a specific manager.

The table may also have multiple foreign keys that reference primary keys in other tables. For example, and foreign keys could be used to connect each employee to their respective department and location.

Globant SQL Interview Questions

SQL Question 4: Calculating Click-Through-Rates for Ads

Globant is a company that relies heavily on digital marketing to drive its products. Therefore, they keep track of how many users click on their ads and eventually make purchases. As a data scientist in Globant, can you calculate the click-through-rate (CTR) for each ad? CTR is defined as the number of users who click on an ad divided by the number of total ad views.

Example Input:
ad_idview_dateuser_id
400108/05/2021142
400208/10/2021547
400108/15/2021239
400308/20/2021684
400208/25/2021225
Example Input:
click_idclick_dateuser_idad_id
901208/06/20211424001
780808/11/20215584002
679308/12/20212394001
452108/20/20216844003
Example Output:
ad_idclick_through_rate
40011.0
40020.5
40031.0

Answer:


This query works by joining the and tables on the and fields. The click-through-rate is then calculated as the number of unique clicks (users who clicked) divided by the total number of views. Using a left join ensures that all ads that were viewed are included in the final output, regardless of whether they were clicked or not.

To solve a similar problem about calculating rates, solve this SQL interview question from TikTok on DataLemur's interactive SQL code editor: SQL interview question from TikTok

SQL Question 5: What is database denormalization, and when is it a good idea to consider it?

Imagine you've got giant AF jigsaw puzzle with thousands of pieces, and each piece represents a piece of data in your database. You've spent hours organizing the puzzle into neat little piles, with each pile representing a table in your database. This process is called normalization, and it's a great way to make your database efficient, flexible, and easy to maintain.

But what if you want to solve the puzzle faster (aka make your queries run faster?)?

That's where denormalization comes in – Denormalization is like the puzzle-solving equivalent of taking a shortcut!

Instead of putting all the pieces in separate piles, you might decide to clone some of the pieces, and then have that one puzzle piece be put into multiple piles. Clearly, we are breaking the rules of physics, but that's just like de-normalization because it breaks the normal rules of normalization (1st, 2nd, 3rd normal forms).

By adding redundant puzzle pieces, it can be easier to find the pieces you need, but it also means that you have to be extra careful when you're moving pieces around or adding new ones (aka INSERT/UPDATE commands become more complex).

On the plus side, denormalization can improve the performance of your database and make it easier to use. On the downside, it can make your database more prone to errors and inconsistencies, and it can be harder to update and maintain. In short, denormalization can be a helpful tool, but it's important to use it wisely!

SQL Question 6: Selecting Customers with Specific Email Domain

You are provided with a table containing records of Globant's customers. Each record includes the customer's , , , and . Write a SQL query to find all customers who have an email address ending with '@globant.com'. Present your results in a table that includes the , , and of these customers.

Example Input:
idnameemailsign_up_date
37John Doejohndoe@gmail.com2018-05-12
108Mary Johnsonmary.johnson@globant.com2020-06-25
219Carlos Mendozacarlos.mendoza@globant.com2019-07-18
653Anna Smithannasmith@yahoo.com2020-01-20
771Peter Saganpeter.sagan@hotmail.com2018-12-12
Example Output:
idnameemail
108Mary Johnsonmary.johnson@globant.com
219Carlos Mendozacarlos.mendoza@globant.com

Answer:


The above SQL query filters the table to get the customer records whose email ends with '@globant.com'. In SQL, the 'LIKE' keyword is used to search for a specified pattern in a column. The '%@globant.com' pattern used in the query matches any string that ends with '@globant.com'.

SQL Question 7: What's a correlated sub-query? How does it differ from a non-correlated sub-query?

A correlated sub-query is a sub-query that depends on the outer query and cannot be executed separately. It uses the outer query to filter or transform data by referencing a column from it, and the outer query uses the results of the inner query. In contrast, a non-correlated sub-query is independent of the outer query and can be executed on its own. It does not reference any columns from the outer query and is used to retrieve additional data needed by the outer query.

Here is an example of a correlated sub-query:


This query selects the and total sales of all Globant customers in the sales table whose are greater than the average of their own customer group. The sub-query in this case is correlated with the outer query, as it references the column from the outer query ().

Here is an example of a non-correlated sub-query:


The sub-query in this case is non-correlated, as it does not reference any columns from the outer query.

Performance-wise, correlated sub-queries are generally slower to execute, as they have to be re-evaluated for each row of the outer query, while non-correlated sub-queries are faster, as they only have to be executed once.

SQL Question 8: Analyzing Customer Churn and Employee interaction

Globant is interested in analyzing their customer churn and they want to understand which employees worked with which customers in the past month. The company has two tables in their PostgreSQL database: and . The table maintains the information about all the customers providing their , , , and status (whether the customer has left the company or not). The table records the , , , and (the date when the activity happened).

Write a SQL query that joins these two tables and returns the , , , , and for all customers who have churned in the past month.

Sample Input:

customer_idfirst_namelast_namechurned
100JohnDoeyes
101JaneSmithno
102TomBrownyes
103EmilyDavisno

Sample Input:

activity_idemployee_idcustomer_idactivity_date
90010001002022-09-01
90110011012022-09-05
90210001022022-09-10
90310021032022-09-15

Example Output:

customer_idfirst_namelast_nameemployee_idactivity_date
100JohnDoe10002022-09-01
102TomBrown10002022-09-10

Answer:


This SQL query first joins the table with the table based on the . Then it filters out the customers who have churned and had an activity in the past month. The result will be sorted in descending order of the activity date.

Since joins come up frequently during SQL interviews, try an interactive Spotify JOIN SQL question: Spotify JOIN SQL question

SQL Question 9: Compute Overall Employee Skill Efficiency

Globant wants to evaluate the overall skill efficiency of each of its employees based on their completed tasks. The table has each employee's work hours per day, and the table has task difficulty ratings for each task they completed. The task difficulty ranges from 1 (easiest) to 10 (hardest).

Calculate the overall skill efficiency of each employee using the formula: . Round off the total efficiency % to 2 decimal places for better readability.

Example Input:
employee_idnamework_hours_per_day
1001John Doe8
1002Jane Smith6
1003Mary Johnson7
Example Input:
task_idemployee_iddifficulty_rating
200110017
200210018
200310026
200410025
Example Output:
employee_idnameefficiency
1001John Doe93.75
1002Jane Smith91.67
1003Mary Johnsonnull

Answer:


This code first joins the and tables using a left join to ensure that all employees are included, even if they haven't completed any tasks. It then groups the data by and . For each grouped dataset, the overall skill efficiency is computed by summing up the task difficulty ratings, dividing the sum by the employee's total possible score (which is his/her work hours per day times 10), and then multiplying the result by 100. The function is used to maintain readability by rounding off the efficiency to 2 decimal places.

To practice a very similar question try this interactive Amazon Server Utilization Time Question which is similar for calculating total metrics or this Microsoft Teams Power Users Question which is similar for calculating top users based on activity.

SQL Question 10: What does the constraint do?

A UNIQUE constraint ensures that all values in a column are different. It is often used in conjunction with other constraints, such as NOT NULL, to ensure that the data meets certain conditions.

For example, if you had Globant sales leads data stored in a database, here's some constraints you'd use:


In this example, the UNIQUE constraint is applied to the "email" and "phone" fields to ensure that each Globant lead has a unique email address and phone number. This helps to ensure the integrity of the data in the database and prevents errors that could occur if two leads had the same email address or phone number.

How To Prepare for the Globant SQL Interview

The key to acing a Globant SQL interview is to practice, practice, and then practice some more! In addition to solving the above Globant SQL interview questions, you should also solve the 200+ FAANG SQL Questions on DataLemur which come from companies like Netflix, Google, and Amazon. DataLemur SQL and Data Science Interview Questions

Each SQL question has hints to guide you, detailed solutions and crucially, there's an online SQL coding environment so you can instantly run your query and have it executed.

To prep for the Globant SQL interview you can also be wise to practice SQL problems from other tech companies like:

However, if your SQL skills are weak, don't worry about diving straight into solving questions – improve your SQL foundations with this SQL interview tutorial.

SQL interview tutorial

This tutorial covers things like rank window functions and grouping by multiple columns – both of which show up routinely in Globant SQL interviews.

Globant Data Science Interview Tips

What Do Globant Data Science Interviews Cover?

Beyond writing SQL queries, the other topics to prepare for the Globant Data Science Interview are:

Globant Data Scientist

How To Prepare for Globant Data Science Interviews?

The best way to prepare for Globant Data Science interviews is by reading Ace the Data Science Interview. The book's got:

  • 201 Interview Questions from Facebook, Google & startups
  • A Refresher on SQL, AB Testing & ML
  • Great Reviews (900+ reviews, 4.5-star rating)

Ace the DS Interview