SQL | Table-valued functions exercise | Use a table-valued function to show episodes for a given doctor

This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.

Software ==> SQL  (198 exercises)
Version ==> Any version of SQL Server
Topic ==> Table-valued functions  (6 exercises)
Level ==> Relatively easy
Subject ==> SQL training
Before you can do this exercise, you'll need to download and unzip this file (if you have any problems doing this, click here for help).

You need a minimum screen resolution of about 700 pixels width to see our exercises. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

First (if you haven't already done so) run the script shown above to generate the Doctor Who training database.

Create a table-valued function to list out all of the episode details for a given doctor.  Here's the syntax, as a reminder:


@Parameter1 DataType1,


@ParameterN DataTypeN




-- return data from a single SELECT statement






You should be able to run this query to show the episodes in which anyone called Chris appeared:

-- show the Christopher Eccleston episodes

SELECT * FROM dbo.fnEpisodesByDoctor('Chris')

Here's what this should show:

Christopher Eccleston episodes

The first few of the 13 episodes in which Christopher Eccleston appeared.

Create a query based on this (you'll need to give the results returned by the function a table alias, and create a join from this to the tblAuthor table) to show the details (including author) for episodes made by doctors called Chris:

List of episodes

The 13 episodes made by Christopher Eccleston, bringing in the author name from the tblAuthor table.

Optionally, save this query as Episodes by doctor.sql, then close it down.

You can unzip this file to see the answers to this exercise, although please remember this is for your personal use only.
This page has 0 threads Add post