I recently came across a theorem that states that if G is a finite group and every p-group of G is normal then G is isomorphic to the direct product of its Sylow p subgroups. To prove this we use that in this case elements from different Sylow subgroups commute. Now in the abelian case (ie the $\mathbb{Z}$ module case) every subgroup is a direct summand of G by the classification theorem.
So I was wondering if we could do something similar in the non abelian case using normality. My question is:
If G is a finite group and P is a normal Sylow p subgroup then does there exist $H\leq G$ such that $G\cong P\times H$.
I believe this statement is not true in general (but it is true if all of the Sylow p subgroups are normal iff G is nilpotent), so what are some conditions for this to hold. Also what if we replaced the direct with semidirect product ?