如何在SQL Server中联接表,以便每行联接一次
我有两个表,如下所示: 我需要以某种方式加入他们,以实现此结果集:如何在SQL Server中联接表,以便每行联接一次,sql,sql-server,join,select,window-functions,Sql,Sql Server,Join,Select,Window Functions,我有两个表,如下所示: 我需要以某种方式加入他们,以实现此结果集: 你知道我该怎么做吗?你可以用行数()和完全联接来枚举每个日期每个表的行,结果如下: select t1.prof, t2.project, coalesce(t1.date, t2.date) date, t1.amount amount1, t2.amount amount2 from ( select t1.*, row_number
你知道我该怎么做吗?你可以用
行数()和完全联接来枚举每个日期每个表的行,结果如下:
select
t1.prof,
t2.project,
coalesce(t1.date, t2.date) date,
t1.amount amount1,
t2.amount amount2
from (
select
t1.*,
row_number() over(partition by date order by prof) rn
from table1 t1
) t1
full join (
select
t2.*,
row_number() over(partition by date order by project) rn
from table2 t2
) t2 on t1.date = t2.date and t1.rn = t2.rn
你需要解释你的“逻辑”/意图是什么-仅仅发布那些表并不能真正告诉我们你在做什么…从命名你的表开始,解释不同字段的含义以及wiich字段之间的关系。例如:具有相同日期的行是否“属于彼此”?是否希望具有相同数量的行匹配?这么多问题。。。请解释你的推理是什么,从两个表格到合并表格。仅将图像用于不能表示为文本或扩充文本的内容。请不要要求我们做你的家庭作业。