SQL Server Interview Questions
        Posted  
        
            by Rodney Vinyard
        on Geeks with Blogs
        
        See other posts from Geeks with Blogs
        
            or by Rodney Vinyard
        
        
        
        Published on Sat, 26 Feb 2011 20:43:07 GMT
        Indexed on 
            2011/02/26
            23:26 UTC
        
        
        Read the original article
        Hit count: 465
        
User-Defined Functions
Scalar User-Defined Function
A Scalar user-defined function returns one of the scalar data types. Text, ntext, image and timestamp data types are not supported. These are the type of user-defined functions that most developers are used to in other programming languages. 
Table-Value User-Defined Function
An Inline Table-Value user-defined function returns a table data type and is an exceptional alternative to a view as the user-defined function can pass parameters into a T-SQL select command and in essence provide us with a parameterized, non-updateable view of the underlying tables.
Multi-statement Table-Value User-Defined Function
A Multi-Statement Table-Value user-defined function returns a table and is also an exceptional alternative to a view as the function can support multiple T-SQL statements to build the final result where the view is limited to a single SELECT statement. Also, the ability to pass parameters into a T-SQL select command or a group of them gives us the capability to in essence create a parameterized, non-updateable view of the data in the underlying tables. Within the create function command you must define the table structure that is being returned. After creating this type of user-defined function, I can use it in the FROM clause of a T-SQL command unlike the behavior found when using a stored procedure which can also return record sets.
© Geeks with Blogs or respective owner