SQL SERVER 함수 의 깊이 표 값 함수 처리 분석

어떤 경우 에는 다음 표 값 함수,표 값 함 수 는 주로 데이터 로 결과 집합 을 되 돌려 주 는 데 사 용 될 수 있 습 니 다.매개 변수(보기 와 의 큰 차이)를 가 져 올 수 있 습 니 다.만약 에 함수 에 너무 많은 논리 적 처리 가 없다 면 변수의 정의,판단 등 표 값 함수 가 결과 집합 을 되 돌려 주 는 것 은 간단하게 아래 에 이렇게 쓸 수 있 습 니 다.

CREATE FUNCTION Fun_GetReportNews(@type varchar(10))
RETURNS TABLE
AS
RETURN
(
  SELECT TPR_ID,TPR_Title,TPR_Date FROM TP_ReportNews WHERE TPR_Type = @type
)
호출 할 때 SELECT XX FROM FunGetReprotNews('xx')함수 에서 변 수 를 정의 하고 계산 처리 가 무엇 인지 판단 하려 면 쓰기 방법 이 좀 다 릅 니 다.표 변 수 를 정의 해 야 합 니 다.표 값 함수 에 서 는 임시 표를 만 들 수 없고 표 변수 만 만 만 들 수 있 습 니 다.간단 한 쓰기 스타일 을 들 어 다음 과 같 습 니 다.

CREATE FUNCTION FUN_GetInfoList(@type varchar(10))
RETURNS @Table TABLE(TPR_ID int,TPR_Title nvarchar(100),TPR_PubDate datetime)
AS
BEGIN
  DECLARE @a varchar(10)
  SELECT @a = xx FROM XX WHERE xx = @type
    INSERT @Table SELECT XX,XX,XX FROM TableName WHERE XX = @a --
RETURN
END
다 중 표 작업 을 하면 함수 내 에서 표 변 수 를 정의 하여 결과 집합 을 저장 하고 관련 조 회 를 할 수 있 습 니 다.스칼라 함수 도 모양 을 붙 여 라.낡 았 다.하하~~

CREATE FUNCTION FUN_DataFormat (@strDate datetime) 
RETURNS varchar(20)  AS 
BEGIN

    declare @date varchar(20)
      set @date = DATENAME(YY,@strDate)+' '+Convert(VARCHAR,MONTH(@strDate))+' '+Convert(VARCHAR,DAY(@strDate))+' '
    return @date
END
스칼라 함수 에 접근 할 때 보통 함수 이름 앞 에 dbo 를 붙인다.그렇지 않 으 면 시스템 내 장 된 함수 로 여 겨 지지 만 시스템 내 장 된 함수 도 아니 기 때문에 잘못 보고 할 수 있다.위 에 거 는 이렇게 테스트 할 수 있어 요.select dbo.FUNDataFormat(getdate())가 이 걸 흔 들 었 어 요~~~~~~~

좋은 웹페이지 즐겨찾기