如果想要将两张表横向合并,可以使用SQL中的JOIN操作符,结合使用ROW_NUMBER()函数来为每个表添加一个唯一的序号,然后以这个序号作为关联条件进行合并。
SELECT a.row_num, a.age, a.name, b.city
FROM (SELECT ROW_NUMBER() OVER (ORDER BY age) AS row_num, age, name FROM table_a) AS a
JOIN (SELECT ROW_NUMBER() OVER (ORDER BY city) AS row_num, city FROM table_b) AS b
ON a.row_num = b.row_num;
这个查询会将table_a和table_b中的数据按照age和city进行排序,并为每个表中的每一行分配一个唯一的序号,然后将这两个结果集通过序号进行关联,最终将age和name字段与city字段横向合并在一起,且总行数不变。
网友评论