返回介绍

solution / 1300-1399 / 1378.Replace Employee ID With The Unique Identifier / README

发布于 2024-06-17 01:03:20 字数 2239 浏览 0 评论 0 收藏 0

1378. 使用唯一标识码替换员工 ID

English Version

题目描述

Employees 表:

+---------------+---------+
| Column Name   | Type  |
+---------------+---------+
| id      | int   |
| name      | varchar |
+---------------+---------+
在 SQL 中,id 是这张表的主键。
这张表的每一行分别代表了某公司其中一位员工的名字和 ID 。

 

EmployeeUNI 表:

+---------------+---------+
| Column Name   | Type  |
+---------------+---------+
| id      | int   |
| unique_id   | int   |
+---------------+---------+
在 SQL 中,(id, unique_id) 是这张表的主键。
这张表的每一行包含了该公司某位员工的 ID 和他的唯一标识码(unique ID)。

 

展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。

你可以以 任意 顺序返回结果表。

返回结果的格式如下例所示。

 

示例 1:

输入:
Employees 表:
+----+----------+
| id | name   |
+----+----------+
| 1  | Alice  |
| 7  | Bob    |
| 11 | Meir   |
| 90 | Winston  |
| 3  | Jonathan |
+----+----------+
EmployeeUNI 表:
+----+-----------+
| id | unique_id |
+----+-----------+
| 3  | 1     |
| 11 | 2     |
| 90 | 3     |
+----+-----------+
输出:
+-----------+----------+
| unique_id | name   |
+-----------+----------+
| null    | Alice  |
| null    | Bob    |
| 2     | Meir   |
| 3     | Winston  |
| 1     | Jonathan |
+-----------+----------+
解释:
Alice and Bob 没有唯一标识码, 因此我们使用 null 替代。
Meir 的唯一标识码是 2 。
Winston 的唯一标识码是 3 。
Jonathan 唯一标识码是 1 。

解法

方法一:LEFT JOIN

我们可以使用 LEFT JOIN 来连接 EmployeesEmployeeUNI 表,然后使用 SELECT 语句来选择 unique_idname 列。

# Write your MySQL query statement below
SELECT unique_id, name
FROM
  Employees
  LEFT JOIN EmployeeUNI USING (id);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文