SQL JOIN語法 用UID取代員工ID Leetcode #1378

SQL JOIN語法 用UID取代員工ID Leetcode #1378

更新於 發佈於 閱讀時間約 3 分鐘

題目敘述

題目會給我們兩張資料表。

第一張資料表是Employees

裡面分別有id、name等欄位。這張資料表的id是主鍵


第二張資料表是EmployeeUNI

裡面分別有id、unique_id等欄位。這張資料表的(id、unique_id)是複合主鍵id。


題目要求我們列出每位員工所對應到的unique_id,如果對應不到,則填上null


Table: Employees

+---------------+---------+
| Column Name | Type |
+---------------+---------+
| id | int |
| name | varchar |
+---------------+---------+
id is the primary key (column with unique values) for this table.
Each row of this table contains the id and the name of an employee in a company.

Table: EmployeeUNI

+---------------+---------+
| Column Name | Type |
+---------------+---------+
| id | int |
| unique_id | int |
+---------------+---------+
(id, unique_id) is the primary key (combination of columns with unique values) for this table.
Each row of this table contains the id and the corresponding unique id of an employee in the company.

詳細的題目可在這裡看到


約束條件

列出每位員工所對應到的unique_id,如果對應不到,則填上null


演算法

Employees 和 ​EmployeeUNI 做 LEFT JOIN ​

連接的條件為 e.id = e_uni.id

假如第一次接觸SQL或者JOIN語法的同學,可參考 LEFT JOIN 語法教學


程式碼

SELECT e_uni.unique_id, e.name
FROM Employees e LEFT JOIN EmployeeUNI e_uni
ON e.id = e_uni.id;

Reference:

[1] MySQL by LEFT JOIN - Replace Employee ID With The Unique Identifier - LeetCode

avatar-img
小松鼠的演算法樂園
95會員
426內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言
avatar-img
留言分享你的想法!
題目敘述 題目會給我們兩張資料表,第一張是Sales,第二張是Product。 第一張是Sales表格,裡面分別有sale_id、 product_id、year、quantity、price等欄位。其中(sale_id、 product_id)做為複合主鍵Primary key Table:
題目敘述 題目會給我們一張Tweets資料表。裡面分別有tweet_id、content等欄位。這張資料表的tweet_id是主鍵Primary key。 題目要求我們列出所有非法的推文。輸出順序不拘。 非法推文的定義,推文內容的長度超過15個字元。
題目敘述 題目會給我們一張Views資料表。裡面分別有article_id、author_id、viewer_id、view_date等欄位。題目說這張資料表沒有主鍵Primary key,而且可能有重複欄位。 題目要求我們列出所有讀過自己寫的文章的作者ID 輸出答案時,請以作者ID做升序排列
題目敘述 題目會給我們兩張資料表,第一張是Sales,第二張是Product。 第一張是Sales表格,裡面分別有sale_id、 product_id、year、quantity、price等欄位。其中(sale_id、 product_id)做為複合主鍵Primary key Table:
題目敘述 題目會給我們一張Tweets資料表。裡面分別有tweet_id、content等欄位。這張資料表的tweet_id是主鍵Primary key。 題目要求我們列出所有非法的推文。輸出順序不拘。 非法推文的定義,推文內容的長度超過15個字元。
題目敘述 題目會給我們一張Views資料表。裡面分別有article_id、author_id、viewer_id、view_date等欄位。題目說這張資料表沒有主鍵Primary key,而且可能有重複欄位。 題目要求我們列出所有讀過自己寫的文章的作者ID 輸出答案時,請以作者ID做升序排列