I read that $\ce{MgCl2}$ and $\ce{CaCl2}$ are more soluble than $\ce{NaCl}$ in water. Solubility of $\ce{MgCl2}$ is $\pu{543 g/L}$ and that of $\ce{NaCl}$ is $\pu{360 g/L}$ (both at $20^{\circ} \pu{C}$).
I think that $\ce{NaCl}$ should be more soluble due to its higher ionic nature. $\ce{Mg^{2+}}$ and $\ce{Ca^{2+}}$ are more polarizing and have more covalent nature and thus should be less soluble.
I want to know the reason for why the opposite is happening.