스칼라 사용자 정의 함수

SQL Server에서 함수와 저장 프로시저 작성하기

Meghan Kwartler

IT Consultant

사용자 정의 함수(UDF)

무엇인가?

루틴은 다음을 수행합니다.

  • 입력 매개변수 수락 가능
  • 동작 수행
  • 결과 반환(단일 스칼라 값 또는 테이블)

이유

  • 실행 시간 단축
  • 네트워크 트래픽 감소
  • 모듈식 프로그래밍 지원
SQL Server에서 함수와 저장 프로시저 작성하기

모듈식 프로그래밍이란?

  • 소프트웨어 설계 기법
  • 기능을 독립적이고 교체 가능한 모듈로 분리
  • 코드 재사용 가능
  • 코드 가독성 향상
SQL Server에서 함수와 저장 프로시저 작성하기

레시피의 함수

레시피의 모듈식 프로그래밍 레시피 4.jpg

SQL Server에서 함수와 저장 프로시저 작성하기

굽기 함수의 입력 매개변수

굽기 함수 입력 매개변수.jpg

SQL Server에서 함수와 저장 프로시저 작성하기

입력 매개변수 없는 스칼라 UDF

-- Scalar function with no input parameters
CREATE FUNCTION GetTomorrow()
    RETURNS date AS BEGIN
RETURN (SELECT DATEADD(day, 1, GETDATE()))
END
SQL Server에서 함수와 저장 프로시저 작성하기

단일 매개변수 스칼라 UDF

-- 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;
SQL Server에서 함수와 저장 프로시저 작성하기

두 개의 입력 매개변수 스칼라 UDF

-- 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;
SQL Server에서 함수와 저장 프로시저 작성하기

이제 직접 UDF를 만들어 보세요!

SQL Server에서 함수와 저장 프로시저 작성하기

Preparing Video For Download...