2
작업과 관련된 데이터가 들어있는 세 개의 테이블이 있습니다. 한 테이블은 마스터 테이블이고 나머지 두 테이블은 트랜잭션 테이블이며 마스터와 관련이 있습니다.여러 쿼리 결과에서 단일 값을 반환하는 SQL Server 함수를 작성하는 방법
CREATE TABLE Job
(JobNo varchar(10))
CREATE TABLE Trans1
(JobNo varchar(10), TrxDate datetime, TrxStatus int)
CREATE TABLE Trans2
(JobNo varchar(10), TrxDate datetime, TrxStatus int)
테이블 Job
테이블에는 항상 작업 당 하나의 행이 있습니다. Trans1
및 Trans2
에는 작업 당 하나 또는 여러 개의 행이 없습니다.
주어진 작업에 대해 지정된 날짜에 TrxStatus
열의 값을 반환하는 쿼리를 작성할 수 있어야합니다.
의이 Trans1
가
Job TrxDate TrxStatus
AB123 2/1/2012 10
AB123 3/1/2012 20
AB123 3/31/2021 20
이의이 Trans2
가 가지고 있다고 가정 해 봅시다 가지고 있다고 가정 해 봅시다
Job TrxDate TrxStatus
AB123 3/15/2012 10
:
SELECT JobNo, GetStatusAt(JobNo, '3/1/2012') FROM Job
20 개가 돌아갑니다.
SELECT JobNo, GetStatusAt(JobNo, '3/17/2012') FROM Job
하고 10
SELECT JobNo, GetStatusAt(JobNo, '4/1/2012') FROM Job
를 반환하고 내가 전에 UNION을 쿼리를 주문 한 번도 안 써봤 (20)
을 반환 한있다. 감사! –