Skalare benutzerdefinierte Funktionen

Funktionen und Stored Procedures in SQL Server schreiben

Meghan Kwartler

IT Consultant

Benutzerdefinierte Funktionen (UDFs)

Was?

Routinen, die

  • Eingabeparameter annehmen können
  • Eine Aktion ausführen
  • Ein Ergebnis zurückgeben (einzelner Skalarwert oder Tabelle)

Warum?

  • Kann die Ausführungszeit reduzieren
  • Kann den Netzwerkverkehr verringern
  • Ermöglicht modulares Programmieren
Funktionen und Stored Procedures in SQL Server schreiben

Was ist modulares Programmieren?

  • Software-Entwurfstechnik
  • Trennt Funktionalität in unabhängige, austauschbare Module
  • Ermöglicht Codewiederverwendung
  • Verbessert die Lesbarkeit des Codes
Funktionen und Stored Procedures in SQL Server schreiben

Funktionen in Rezepten

Rezept Kapitel 2 für modulares Programmieren4.jpg

Funktionen und Stored Procedures in SQL Server schreiben

Eingabeparameter der Funktion „Bake"

Rezept Kapitel 2 für modulares Programmieren3.jpg

Funktionen und Stored Procedures in SQL Server schreiben

Skalare UDF ohne Eingabeparameter

-- Scalar function with no input parameters
CREATE FUNCTION GetTomorrow()
    RETURNS date AS BEGIN
RETURN (SELECT DATEADD(day, 1, GETDATE()))
END
Funktionen und Stored Procedures in SQL Server schreiben

Skalare UDF mit einem 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;
Funktionen und Stored Procedures in SQL Server schreiben

Skalare UDF mit zwei Eingabeparametern

-- 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;
Funktionen und Stored Procedures in SQL Server schreiben

Jetzt bist du dran: UDFs erstellen!

Funktionen und Stored Procedures in SQL Server schreiben

Preparing Video For Download...