2017-07-11 41 views
0
331 QUIZ0000000062 919652503596 2017-07-10 18:54:33.217 NULL NULL Falciform ligament A 
332 QUIZ0000000062 919652503596 2017-07-10 18:54:33.217 NULL NULL Coronary ligament B 
333 QUIZ0000000062 919652503596 2017-07-10 18:54:33.217 NULL NULL Mesentery of the lesser sac C 
334 QUIZ0000000062 919652503596 2017-07-10 18:54:33.217 NULL NULL Ligamentum teres D 

的輸出中應該是問題的轉置與每一列中的選項,如柱:如何在SQL Server中爲此記錄輸入編寫轉置?

QuestionCode  A      B       C   
------------------------------------------------------------------------------- 
QUIZ0000000062 Falciform ligament Coronary ligament Mesentery of the lesser sac 

     D 
---------------- 
Ligamentum teres 
+0

會不會有永遠是四個選項(通過d A),或者你可以有一些更復雜的問題......說有更多的選擇匹配的問題。 –

回答

0

如果我理解正確你的問題,你可以完成你做一些SELF JOINS尋找什麼。

CREATE TABLE #aa(
    ID INT, 
    QuestionCode NVARCHAR(100), 
    SomeNumber BIGINT, 
    DateColumn DATETIME, 
    NullColumn1 INT, 
    NullColumn2 INT, 
    Answer varchar (100), 
    AnswerLetter char 
) 

INSERT #aa (ID,QuestionCode,SomeNumber,DateColumn,Answer,AnswerLetter)  
VALUES  
    (331,'QUIZ0000000062',919652503596,'2017-07-10 18:54:33.217','Falciform ligament','A'), 
    (332,'QUIZ0000000062',919652503596,'2017-07-10 18:54:33.217','Coronary ligament','B'), 
    (333,'QUIZ0000000062',919652503596,'2017-07-10 18:54:33.217','Mesentery of the lesser sac','C'), 
    (334,'QUIZ0000000062',919652503596,'2017-07-10 18:54:33.217','Ligamentum teres','D') 

SELECT q.QuestionCode,a.Answer 'A',b.Answer 'B',c.Answer 'C',d.Answer 'D' 
FROM #aa q 
    JOIN #aa a ON q.AnswerLetter = a.AnswerLetter AND a.AnswerLetter = 'A' 
    JOIN #aa b ON q.AnswerLetter = a.AnswerLetter AND b.AnswerLetter = 'B' 
    JOIN #aa c ON q.AnswerLetter = a.AnswerLetter AND c.AnswerLetter = 'C' 
    JOIN #aa d ON q.AnswerLetter = a.AnswerLetter AND d.AnswerLetter = 'D' 

DROP TABLE #aa 

結果:

+---------------+--------------------+-------------------+-----------------------------+------------------+ 
| QuestionCode |  A   |  B    |   C     |  D   | 
+---------------+--------------------+-------------------+-----------------------------+------------------+ 
|QUIZ0000000062 | Falciform ligament | Coronary ligament | Mesentery of the lesser sac | Ligamentum teres | 
+---------------+--------------------+-------------------+-----------------------------+------------------+