Scalare door gebruiker gedefinieerde functies

Functies en opgeslagen procedures schrijven in SQL Server

Meghan Kwartler

IT Consultant

Door gebruiker gedefinieerde functies (UDF's)

Wat?

Routines die

  • Invoerparameters kunnen aannemen
  • Een actie uitvoeren
  • Een resultaat teruggeven (één scalare waarde of tabel)

Waarom?

  • Kan de uitvoeringstijd verkorten
  • Kan het netwerkverkeer verminderen
  • Maakt modulair programmeren mogelijk
Functies en opgeslagen procedures schrijven in SQL Server

Wat is modulair programmeren?

  • Ontwerptechniek voor software
  • Scheidt functionaliteit in zelfstandige, uitwisselbare modules
  • Maakt codehergebruik mogelijk
  • Verbetert de leesbaarheid van code
Functies en opgeslagen procedures schrijven in SQL Server

Functies in recepten

Functies in recepten

Functies en opgeslagen procedures schrijven in SQL Server

Invoerparameters voor bake-functie

Invoerparameters van bakfunctie

Functies en opgeslagen procedures schrijven in SQL Server

Scalare UDF zonder invoerparameter

-- Scalar function with no input parameters
CREATE FUNCTION GetTomorrow()
    RETURNS date AS BEGIN
RETURN (SELECT DATEADD(day, 1, GETDATE()))
END
Functies en opgeslagen procedures schrijven in SQL Server

Scalare UDF met één parameter

-- Scalar function with one parameter
CREATE FUNCTION GetRideHrsOneDay (@DateParm date)
    RETURNS numeric AS BEGIN
RETURN (
  SELECT 
    SUM(
      DATEDIFF(second, PickupDate, DropoffDate)
    )/ 3600 
  FROM 
    YellowTripData 
  WHERE 
    CONVERT (date, PickupDate) = @DateParm
) END;
Functies en opgeslagen procedures schrijven in SQL Server

Scalare UDF met twee invoerparameters

-- Scalar function with two input parameters
CREATE FUNCTION GetRideHrsDateRange (
  @StartDateParm datetime, @EndDateParm datetime
) RETURNS numeric AS BEGIN RETURN (
  SELECT 
    SUM(
      DATEDIFF(second, PickupDate, DropOffDate)
    )/ 3600 
  FROM YellowTripData 
  WHERE 
    PickupDate > @StartDateParm 
    AND DropoffDate < @EndDateParm
) END;
Functies en opgeslagen procedures schrijven in SQL Server

Jij bent aan de beurt: maak UDF's!

Functies en opgeslagen procedures schrijven in SQL Server

Preparing Video For Download...