Multi statement TVF
전달받은 월과 연도 매개변수에 대해, 각 날짜별로 이동(트립) 횟수와 평균 탑승 시간을 반환하는 멀티 스테이트먼트 테이블 값 함수(table-valued function)를 만드세요.
이 연습은 강의의 일부입니다
SQL Server에서 함수와 저장 프로시저 작성하기
연습 안내
- 테이블 변수
@DailyTripStats를 반환하는 함수CountTripAvgDuration()을 만드세요. - 입력 매개변수
@Month와@Year를 선언하세요. - 쿼리 결과를 테이블 변수
@DailyTripStats에 INSERT 하세요. StartDate를date데이터 타입으로CAST하여 선택하고 해당 값으로 그룹화하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
-- Create the function
CREATE FUNCTION ___ (___ CHAR(2), ___ CHAR(4))
-- Specify return variable
RETURNS ___ TABLE(
TripDate date,
TripCount int,
AvgDuration numeric)
AS
BEGIN
-- Insert query results into @DailyTripStats
___ ___
SELECT
-- Cast StartDate as a date
___(___ AS ___),
COUNT(ID),
AVG(Duration)
FROM CapitalBikeShare
WHERE
DATEPART(month, StartDate) = @Month AND
DATEPART(year, StartDate) = @Year
-- Group by StartDate as a date
GROUP BY ___(___ AS ___)
-- Return
___
END