Merge more that two tables together

12 views (last 30 days)
HabenG
HabenG on 4 Nov 2021
Edited: HabenG on 4 Nov 2021
Is there a way to merge multiple tables? I am trying to use outerjoin and innejoin functions to merge multiple tables but it does look like thats possible, Is there a way around this?

Accepted Answer

Dave B
Dave B on 4 Nov 2021
You can nest joins:
outerjoin(t3, outerjoin(t1, t2))
Or in a loop, if you have an array of tables:
tbls={t1 t2 t3 t4};
tjoin=tbls{1};
for i = 2:numel(tbls)
tjoin=outerjoin(tjoin, tbls{i})
end
  1 Comment
HabenG
HabenG on 4 Nov 2021
Edited: HabenG on 4 Nov 2021
Much appreciated!! I added mergekeys to keep one variable constat and it did the trick.
tbls = {T1 T2 T3 T4 T5 T6 T7};
tjoin = tbls{1};
for i = 2:numel(tbls)
tjoin = outerjoin(tjoin, tbls{i},"MergeKeys",true);
end
And if anyone is looking for innerjoin here is a fuction for it....
tjoin_inner = rmmissing(tjoin);

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!