I’m assuming minimum requirement is 1NF.
1) if relationship is many to many and both entities are partially participation
you can't merge ===> require 3 tables
2) if relationship is many to many and either of the entities are partially participation but not both side
you can't merge ===> require 2 tables
3) if relationship is many to many and both entities are total participation
you can merge all in one table and key of the relation is pk(E1)+pk(E2) but data is redundant and so many partial functional dependencies you get but not transitive dependencies
Why we do normalization ?
By normalization tables get increased then what you achieved by merging the tables
1) if relationship is many to one and both entities are partially participation
you can't merge in one table ===> 2 tables required
2) if relationship is many to one and many side entity is only partially participation
you can merge in one table ===> redundancy and transitive dependencies get but not partial functional dependencies. because of pk(new table)=pk(E1)
3) if relationship is many to one and one side entity is only partially participation
you can't merge in one table ===> 2 tables required
4) if relationship is many to one and both entities are totally participation
you can merge in one table ===> redundancy and transitive dependencies get but not partial functional dependencies. because of pk(new table)=pk(E1)
1) if relationship is one to one and both entities are partially participation
you can't merge in one table ===> require 2 tables
2) if relationship is one to one and either of the entities are partially participation
you can merge in one table ===> but pk of resultant table should be pk of partial participation otherwise you require 2 tables.
3) if relationship is one to one and both entities are total participation
you can merge all in one table and pk(new table)=either pk(E1) or pk(E2) is sufficient.
let E1 have m entities and E2 have n entities then no.of tuples in the relation is
MANY-TO-MANY
i) both are partial participation ===> min=3, max= mn-(m+n)+1
ii) only one (E2 side ) is partial participation ===> min=m+1, max= mn-m
iii) both are total participation ===> min=max(m,n)+1, max= mn
MANY-TO-ONE
i) both are partial participation ===> min=2, max= m-1
ii) only one side is partial participation ===> min=max= m
iii) only many side is partial participation (m>(n+1))===> min=n+1, max= m-1
iv) both are total participation (m>n)===> min=max= m
ONE-TO-ONE
i) both are partial participation ===> min=1, max= min(m-1,n-1)
ii) only E2 side is partial participation (therefore m<n) and merge as one table ===> min=max=m
iii) both are total participation (therefore m=n) ===> min=max= m