-
Notifications
You must be signed in to change notification settings - Fork 0
/
LeetCode 1907.sql
60 lines (51 loc) · 1.91 KB
/
LeetCode 1907.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
-- Question: 1907. Count Salary Categories.
-- SQL Schema
-- Pandas Schema
-- Table: Accounts
-- +-------------+------+
-- | Column Name | Type |
-- +-------------+------+
-- | account_id | int |
-- | income | int |
-- +-------------+------+
-- account_id is the primary key (column with unique values) for this table.
-- Each row contains information about the monthly income for one bank account.
-- Write a solution to calculate the number of bank accounts for each salary category. The salary categories are:
-- "Low Salary": All the salaries strictly less than $20000.
-- "Average Salary": All the salaries in the inclusive range [$20000, $50000].
-- "High Salary": All the salaries strictly greater than $50000.
-- The result table must contain all three categories. If there are no accounts in a category, return 0.
-- Return the result table in any order.
-- The result format is in the following example.
-- Example 1:
-- Input:
-- Accounts table:
-- +------------+--------+
-- | account_id | income |
-- +------------+--------+
-- | 3 | 108939 |
-- | 2 | 12747 |
-- | 8 | 87709 |
-- | 6 | 91796 |
-- +------------+--------+
-- Output:
-- +----------------+----------------+
-- | category | accounts_count |
-- +----------------+----------------+
-- | Low Salary | 1 |
-- | Average Salary | 0 |
-- | High Salary | 3 |
-- +----------------+----------------+
-- Explanation:
-- Low Salary: Account 2.
-- Average Salary: No accounts.
-- High Salary: Accounts 3, 6, and 8.
Query:
select "Low Salary" as category,count(*) as accounts_count from Accounts
where income<20000
union
select "Average Salary" as category,count(*) as accounts_count from Accounts
where income>=20000 and income<=50000
union
select "High Salary" as category,count(*) as accounts_count from Accounts
where income>50000