#1607
Easy Database Sellers with no sales
Database
54.3% acceptance
Mar 31, 2026
147
14
No description available.
Solution
Pandas
Time O(1)
Space O(1)
# Table: Customer
#
# +---------------+---------+
# | Column Name | Type |
# +---------------+---------+
# | customer_id | int |
# | customer_name | varchar |
# +---------------+---------+
# customer_id is the column with unique values for this table.
# Each row of this table contains the information of each customer in the WebStore.
#
#
#
# Table: Orders
#
# +---------------+---------+
# | Column Name | Type |
# +---------------+---------+
# | order_id | int |
# | sale_date | date |
# | order_cost | int |
# | customer_id | int |
# | seller_id | int |
# +---------------+---------+
# order_id is the column with unique values for this table.
# Each row of this table contains all orders made in the webstore.
# sale_date is the date when the transaction was made between the customer (customer_id) and the seller (seller_id).
#
#
#
# Table: Seller
#
# +---------------+---------+
# | Column Name | Type |
# +---------------+---------+
# | seller_id | int |
# | seller_name | varchar |
# +---------------+---------+
# seller_id is the column with unique values for this table.
# Each row of this table contains the information of each seller.
#
#
#
# Write a solution to report the names of all sellers who did not make any sales in 2020.
#
# Return the result table ordered by seller_name in ascending order.
#
# The result format is in the following example.
#
# Example 1:
# Input:
# Customer table:
# +--------------+---------------+
# | customer_id | customer_name |
# +--------------+---------------+
# | 101 | Alice |
# | 102 | Bob |
# | 103 | Charlie |
# +--------------+---------------+
# Orders table:
# +-------------+------------+--------------+-------------+-------------+
# | order_id | sale_date | order_cost | customer_id | seller_id |
# +-------------+------------+--------------+-------------+-------------+
# | 1 | 2020-03-01 | 1500 | 101 | 1 |
# | 2 | 2020-05-25 | 2400 | 102 | 2 |
# | 3 | 2019-05-25 | 800 | 101 | 3 |
# | 4 | 2020-09-13 | 1000 | 103 | 2 |
# | 5 | 2019-02-11 | 700 | 101 | 2 |
# +-------------+------------+--------------+-------------+-------------+
# Seller table:
# +-------------+-------------+
# | seller_id | seller_name |
# +-------------+-------------+
# | 1 | Daniel |
# | 2 | Elizabeth |
# | 3 | Frank |
# +-------------+-------------+
# Output:
# +-------------+
# | seller_name |
# +-------------+
# | Frank |
# +-------------+
# Explanation:
# Daniel made 1 sale in March 2020.
# Elizabeth made 2 sales in 2020 and 1 sale in 2019.
# Frank made 1 sale in 2019 but no sales in 2020.
import pandas as pd
def sellers_with_no_sales(customer: pd.DataFrame, orders: pd.DataFrame, seller: pd.DataFrame) -> pd.DataFrame:
orders_2020 = orders[pd.to_datetime(orders['sale_date']).dt.year == 2020]
sellers_with_sales = set(orders_2020['seller_id'])
result = seller[~seller['seller_id'].isin(sellers_with_sales)][['seller_name']]
result = result.sort_values('seller_name')
return result