mysql - 合并具有部分关系的两个表

标签 mysql sql sql-server group-by left-join

我在文本文件(2 个表)中有一些杂乱的数据。我想将它合并到 1 个表中,但存在重复问题。我的数据如下所示:

状态表

+--------------------------+
| | Last Name | Status  |  |
+--------------------------+
| | Jones     | On Time |  |
| | Jones     | On Time |  |
| | Jones     | On Time |  |
| | Jones     | On Time |  |
| | Jones     | Missing |  |
| | Hoinski   | On Time |  |
| | Hoinski   | Late    |  |
| | Hoinski   | Late    |  |
| | Hoinski   | Missing |  |
+--------------------------+  

风险表

+-------------------------+
| | Last Name |  Risk  |  |
+-------------------------+
| | Jones     | High   |  |
| | Jones     | High   |  |
| | Jones     | Low    |  |
| | Jones     | Medium |  |
| | Jones     | Medium |  |
| | Jones     | Medium |  |
| | Jones     | Medium |  |
| | Smith     | Low    |  |
| | Smith     | Medium |  |
| | Smith     | Medium |  |
| | Smith     | Medium |  |
| | Hoinski   | High   |  |
| | Hoinski   | High   |  |
| | Hoinski   | Low    |  |
+-------------------------+  

如何用sql把这两张表聚合成一张表?是否可以?我知道我没有适当的关系(多对多)所以它不太有意义。但是,如果我在 [last name] 字段上使用 Group By 语句聚合数据会怎样?

最佳答案

你是对的 GROUP BY 将解决你的问题,这是查询。

    SELECT * FROM Status 
    INNER JOIN Risk ON Status.[Last Name] = Risk.[Last Name] 
    GROUP BY Status.[Last Name]

关于mysql - 合并具有部分关系的两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32815105/

相关文章:

java - 在 JOOQ 中构建动态表连接

c# - Azure Kubernetes .NET Core 应用程序到 Azure SQL 数据库间歇性错误 258

sql - Mysql 的 SELECT 语句

mysql - Perl 脚本或 MySQL 修复?

mysql - RT4 mysql字符编码问题

对给定数据进行循环的 SQL 查询

sql - 准备好的语句中 where = ?, where in (?) 子句的最佳实践?

mysql - 确定分组后如何选择记录。 ( rails 3.0)

SQL Server Procedure 返回多个表 - 将结果插入表中

用于创建服务器别名的 SQL Server 命令?