Table-valued functions can return only one set of results; SPs can return multiple result sets.
You can subsequently query the results of table functions, but not with SP.
Thus, table functions are more flexible if you do not need multiple result sets.
source
share