안녕하십니까?
김도남 님
Microsoft TechNet의 Forum
사이트를 방문해 주셔서 감사합니다.
문의 하신
“Computed Column
생성 방법”에 대한 답변을 드리겠습니다.
Step
1 : CASE WHEN 문
아래의 문을 이용해서 특정 컬럼 값에 따라 Computed Column에 값을 입력할 수 있습니다.
CASE WHEN <Expression>
THEN <ResultExpression>
ELSE <ElseResultExpression>
END
Step 2 : Query Statement
--기존
테이블이
존재
하는지
체크
후
존재하면
삭제를
합니다.
IF
OBJECT_ID('TestTable1',
'U')
IS NOT NULL
DROP TABLE
[dbo].[TestTable1]
GO
-- Computed Column이
포함된
테이블을
생성합니다.
CREATE
TABLE [dbo].[TestTable1]
(
[No] INT
NOT NULL,
[Department] VARCHAR(50)
NOT NULL,
[Level] Int
NOT NULL,
[Position] AS
CASE WHEN
[Level] = 1 THEN
'deputy'
When [Level]
= 2 Then
'section chief[head]'
WHen [Level]
= 3 Then
'head of department'
END
)
GO
--데이타를
입력
합니다.
INSERT
INTO [TestTable1]
([No],
[Department],
[Level])
SELECT 1,
'Development',
'1' UNION ALL
SELECT 2,
'Development',
'2' UNION ALL
SELECT 3,
'Human Resources',
'1' UNION
ALL
SELECT 4,
'Human Resources',
'3' UNION
ALL
SELECT 5,
'Marketing',
'3'
GO
--입력된
테이타를
확인합니다.
SELECT
* FROM
[TestTable1]
GO
Step 3 : Result

Level Column에 입력되는 값에 따라 Computed Column에는 다음과 같이 입력이 됩니다.
1 -> deputy
2 -> section chief[head]
3 -> head of department
참고 자료
CASE(Transact-SQL)
http://msdn.microsoft.com/ko-kr/library/ms181765.aspx
제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.
제시해 드린 답변이 도움이 되었기를 바랍니다.