需要帮助合并 2 个表中的列并根据 sql 中的参数将剩余数据保留在行中

Need help combining columns from 2 tables and keep remaining data in rows based on parameters in sql

我需要一些帮助!我被引导到 intersect 函数,但它似乎有限,因为它只匹配和 returns 匹配值。我正在尝试将 2 个表合并到一个公共列值上,并根据日期参数 return 行。这甚至可以使用 SQL 吗?提前致谢!

我的起始表是这样的:

name             date       doc          info
janedoe          7/21       jones        47
jonwall          7/1        nick         21


name             date       doc          info
janedoe          6/21       jones        74
jonwall          8/31       hall         22

我想按重名合并这些行。并根据最近的日期保留剩余数据。所以最终结果应该是这样的。

name             date          doc          info
janedoe          7/21          jones         47
jonwall          8/31          hall          22

有没有人可以帮我解决这个问题????我目前正在使用 SQLExpress

WITH allRows AS (
     SELECT * FROM tableA
     UNION ALL 
     SELECT * FROM tableB
), mostRecent AS (
     SELECT *, 
            ROW_NUMBER() OVER 
              (PARTITION BY name ORDER BY date DESC) as rn
     FROM allRows
)
SELECT *
FROM mostRecent 
WHERE rn = 1

你应该有一些 ID 专栏,否则你会有两个人同名的风险。