TSQL - Оператор If..Else внутри функций с табличным значением - не могу пройти

Перед публикацией я прочитал несколько статей о разработке функций USD, но не нашел решений для своей проблемы ... а именно:

] У меня очень простая база данных, в которой хранятся баскетболисты, и она состоит из столбцов ID, возраста, роста и имени. Что я хотел бы сделать, так это реализовать функцию 'height' с одним параметром @set varchar (10), что в зависимости от одного значения @set будет запускать разные операторы выбора

то, что я пытался реализовать, было в псевдокоде :

CREATE FUNCTION [dbo].[age](@set varchar(10))
RETURNS TABLE
AS
BEGIN

    IF  (@set = 'tall')
         SELECT * from player where height > 180

    ELSE IF (@set = 'average')
         SELECT * from player where height >= 155 and height <=175

    ELSE IF (@set = 'low')
         SELECT * from player where height < 155
END

Может ли кто-нибудь подсказать, как это реализовать?

17
задан PiotrWolkowski 24 April 2015 в 13:28
поделиться