sqlserver 의 사용자 정의 함수 방법 소결

'사용자 정의 함수'는 일반적인 표현 이 고'사용자 정의 함수'는 SQL Server 의 서면 표현 입 니 다.SQL Server 2000 은 사용자 정의 함 수 를 만 들 수 있 습 니 다.사용자 정의 함 수 는 반환 값 이 있 습 니 다.사용자 정의 함 수 는 스칼라 함수 나 표 값 함수 로 나 뉘 는데 RETURNS 자구 에서 스칼라 데이터 형식 을 지정 하면 함 수 는 스칼라 함수 입 니 다.여러 개의 Transact-SQL 문 구 를 사용 하여 스칼라 함 수 를 정의 할 수 있 습 니 다.RETURNS 자구 가 TABLE 을 지정 하면 함 수 는 표 값 함수 입 니 다.표 값 함 수 는 내장 표 값 함수(행 내 함수)나 다 중 문 함수 로 나 눌 수 있 습 니 다.RETURNS 자구 에서 지정 한 TABLE 에 열 이 붙 지 않 은 목록 이 있 으 면 이 함 수 는 내장 표 값 함수 입 니 다.RETURNS 자구 가 지정 한 TABLE 형식 에 열 과 데이터 형식 이 있 으 면 이 함 수 는 다 중 구문 표 값 함수 입 니 다.스칼라 함수 예제
 
CREATE FUNCTION dbo.Foo()
RETURNS int
AS
BEGIN
declare @n int
select @n=3
return @n
END
내장 표 값 함수 예제
 
CREATE FUNCTION dbo.Foo()
RETURNS TABLE
AS
return select id, title from msgs
내장 표 값 함수 에는 하나의 selection 문 만 있 습 니 다.다 중 구문 표 값 함수 예제(부분)
 
CREATE FUNCTION fn_FindReports (@InEmpId nchar(5))
RETURNS @retFindReports TABLE (empid nchar(5) primary key,
empname nvarchar(50) NOT NULL,
mgrid nchar(5),
title nvarchar(30))
...
RETURNS 부분 에 주의 하 세 요.다 문 함수 의 주체 에서 다음 문 구 를 사용 할 수 있 습 니 다.아래 목록 에 열거 되 지 않 은 문 구 는 함수 주체 에 사용 할 수 없습니다.할당 문.제어 흐름 문.DECLARE 문 구 는 함수 부분 데이터 변수 와 커서 를 정의 합 니 다.SELECT 문 구 는 표현 식 이 있 는 선택 목록 을 포함 하고 있 으 며,표현 식 은 함수 에 값 을 부여 하 는 부분 변 수 를 포함 하고 있 습 니 다.커서 작업,이 작업 은 함수 에서 설명,열기,닫 기,방출 된 부분 커서 를 참조 합 니 다.INTO 자구 로 국부 변수 에 값 을 부여 하 는 FETCH 문구 만 사용 할 수 있 습 니 다.클 라 이언 트 에 데 이 터 를 되 돌려 주 는 FETCH 문 구 를 사용 할 수 없습니다.INSERT,UPDATE,DELETE 문 구 는 함수 의 부분 table 변 수 를 수정 합 니 다.EXECUTE 문 구 는 확장 저장 과정 을 호출 합 니 다.

좋은 웹페이지 즐겨찾기