From: --CELKO-- on
>> If I had a Derived Table in place of the function, would it do better filtering or would it  be a wash? <<

I would go with a VIEW for a shared table expression.

A derived table or CTE is local to one statement, so it cannot be
shared. A table-valued function can be shared, but is highly
proprietary in SQL Server. A VIEW will port, might be materialized and
can have a WITH CHECK OPTION if it is updatable.

The main use of table-valued functions is to make non-SQL, procedural
programmers comfortable with a familiar syntax and mindset.