钟二网络头像

钟二网络

探索SQL查询技巧、Linux系统运维以及Web开发前沿技术,提供一站式的学习体验

  • 文章92531
  • 阅读1176352
首页 SQL 正文内容

sql相邻两条记录合并

钟逸 SQL 2024-04-14 15:12:30 46

在数据处理中,我们经常需要将相邻的两条记录合并在一起,从而形成一个包含更多信息的单一条记录。在 SQL 中,可以利用 UNION ALL 操作符实现相邻两条记录合并。

语法

sql

SELECT * FROM table1

UNION ALL

SELECT * FROM table2;

**注:** UNION ALL 操作符会合并所有记录,而忽略重复值。

实例

假设我们有两个表, table1 和 table2 ,其中包含以下数据:

table1:

| id | name | age |

| --- | ---- | --- |

| 1 | John | 20 |

| 2 | Mary | 25 |

table2:

| id | city | country |

| --- | ---- | ------- |

| 1 | London | UK |

| 2 | Paris | France |

要将这两个表中相邻的两条记录合并在一起,我们可以使用以下查询:

sql

SELECT * FROM table1

UNION ALL

SELECT * FROM table2;

查询结果如下:

| id | name | age | city | country |

| --- | ---- | --- | ---- | ------- |

| 1 | John | 20 | NULL | NULL |

| 2 | Mary | 25 | NULL | NULL |

| 1 | NULL | NULL | London | UK |

| 2 | NULL | NULL | Paris | France |

可以看到,结果合并了两张表中的数据,相邻的两条记录被合并为一条。

注意事项

* UNION ALL 操作符仅合并两张表中的数据,不会执行去重。

* 确保合并的列具有相同的名称和数据类型。

* 如果合并的列包含空值,可以使用 COALESCE() 函数处理空值。

文章目录
    搜索