2013-03-07 139 views
0

我想知道什麼時候「ONE」(Capital)會打印在下面的代碼?案例staure條件相同

CREATE PROCEDURE TESTCASE 
@ID bigint 
AS DECLARE 
@VAR bigint  
BEGIN 

SELECT 
CASE @ID 
    WHEN 1 THEN 'One' 
    WHEN 2 THEN 'Two' 
    WHEN 1 THEN 'ONE' 
END 

END 


EXEC TESTCASE 1 
+0

它編譯? – sll 2013-03-07 10:50:52

+0

它根本不會。 – 2013-03-07 10:51:15

+0

它不會。也許它會幫助,如果你告訴我們你想達到什麼... – 2013-03-07 10:53:35

回答

2

它永遠不會被打印。當ID爲1時,將執行第一個WHEN並且case語句將退出。

+0

即使我認爲相同,但在以前的代碼中,我發現類似於此代碼...因此我認爲它可以像案例1之後沒有中斷,然後繼續檢查案例2 ..這是C的情況.. – user1948149 2013-03-07 12:35:16