오랫만에 들렸는데..홈페이지가 바뀌었네요^^..넘 멋져요.ㅎ
자주 들리도록 하겠습니다..^^

 

그리고..온김에..
잼있는 가위바위보 토너먼트 승자를 가리는 퀴즈 같이 풀어보아요^^

상황은 이렇습니다.


[그림1]과 같은 데이타가 있습니다. 이 데이타를 이용하여 [그림2]와 같이
표현을 하면 됩니다..^^

 

그럼 관련 설명을 드리겠습니다.

 

A~P까지 CharName 이라는 캐릭터들이 있고 이 캐릭터들은 각각 세번의
가위, 바위, 보를 내게 됩니다.


여기서 데이타를 보시면, Val01,Val02,Val03의 값들이 가위바위보 수치로
표현된 값이며  가위=0, 바위=1, 보=2 라 보시면 됩니다.

 

0(가위) < 1(바위)
1(바위) < 2(보)
2 (보) < 0(가위)

 

 그림1.JPG

 

그리고 토너먼트 대진표는 No1 값 순서대로 두캐릭터가 승부를 보게 되고,
룰은 각 대전하는 캐릭터끼리 세번의 가위바위보를 통해 마니 이긴 사람이
올라가게 되며, 전체적으로 무승부가 나왔을경우 No1값이 작은 사람이
승자가 됩니다.

 

[그림2]를 보시면...

캐릭터 A, B 의 경우 세번의 가위바위보 중 A가 2승 1무로 8강진출..
캐릭터 C, D 의 경우 세번의 가위바위보 중 C가 2승 1패로 8강진출..
캐릭터 E, F 의 경우 세번의 가위바위보 중 F가 2승 1패로 8강진출..
캐릭터 G, H 의 경우 세번의 가위바위보 중 H가 2승 1패로 8강진출..
.
캐릭터 M, N 의 경우 세번의 가위바위보 중 M가 3승으로 8강진출..
캐릭터 O, P 의 경우 세번의 가위바위보 중 P가 2승 1패로 8강진출..

이와 같으며..


8강전 M,P를 보시면..
M CharName, 13 No1, 0 Val01, 1 Val02, 1 Val03
P  CharName, 16 No1, 2 Val01, 1 Val02, 2 Val03
서로 1승 1무 1패가 나오게 됩니다.. 위에서 규칙을 말씀드렸듯이 No1값이
작은 M이 4강진출^^

 

 그림2.JPG

 

그럼 이제 시작해 보아요~

아하~ 하나의 SQL문으로 표현해보세요^^
그러기 위해서는 SQL2005이상에서 하시는게 좋을듯 싶네요.

 

=======================================================================

SELECT * INTO Gambambo
FROM (
            SELECT 'A' CharName, 1 No1, 1 Val01, 0 Val02, 1 Val03 UNION ALL
            SELECT 'B' CharName, 2 No1, 0 Val01, 0 Val02, 0 Val03 UNION ALL
            SELECT 'C' CharName, 3 No1, 0 Val01, 2 Val02, 1 Val03 UNION ALL
            SELECT 'D' CharName, 4 No1, 1 Val01, 1 Val02, 0 Val03 UNION ALL
            SELECT 'E' CharName, 5 No1, 2 Val01, 2 Val02, 1 Val03 UNION ALL
            SELECT 'F' CharName, 6 No1, 1 Val01, 0 Val02, 2 Val03 UNION ALL
            SELECT 'G' CharName, 7 No1, 0 Val01, 2 Val02, 0 Val03 UNION ALL
            SELECT 'H' CharName, 8 No1, 1 Val01, 0 Val02, 2 Val03 UNION ALL
            SELECT 'I' CharName, 9 No1, 0 Val01, 2 Val02, 2 Val03 UNION ALL
            SELECT 'J' CharName, 10 No1, 1 Val01, 0 Val02, 1 Val03 UNION ALL
            SELECT 'K' CharName, 11 No1, 0 Val01, 2 Val02, 2 Val03 UNION ALL
            SELECT 'L' CharName, 12 No1, 1 Val01, 2 Val02, 0 Val03 UNION ALL
            SELECT 'M' CharName, 13 No1, 0 Val01, 1 Val02, 1 Val03 UNION ALL
            SELECT 'N' CharName, 14 No1, 2 Val01, 0 Val02, 0 Val03 UNION ALL
            SELECT 'O' CharName, 15 No1, 1 Val01, 2 Val02, 1 Val03 UNION ALL
            SELECT 'P' CharName, 16 No1, 2 Val01, 1 Val02, 2 Val03
          ) A;
=======================================================================

 

근데..여기에 올리는게 맞는지 몰겠네요..^^