外圈SELECT出的欄位id 要當成 case裡的一個條件
真正要找的欄位 是 case裡再經過 if exists 檢查是不是有值後
再下一段SQL撈出的欄位值 中間 select '1' = '1' 就是在作這個 只是測試用先簡化了
IF EXISTS 這段單獨執行沒問題
但是放進CASE裡就會出現錯誤
請問有前輩能指導錯誤原因嗎?謝謝
SELECT 
      CASE id 
      WHEN '0' 
      THEN 
           '1' 
      ELSE 
           '3' 
      END 
AS AID 
FROM rsi 
WHERE rid='7174' 
以上可正確執行
以下也可正確執行
IF EXISTS (select '1' = '1') 
   select '1' 
ELSE 
   select '0'
但這樣就會有錯
SELECT 
      CASE id 
      WHEN '0' 
      THEN 
        ( 
        IF EXISTS (select '1' = '1') 
           select '1' 
        ELSE 
           select '0' 
        ) 
      ELSE 
           '3' 
      END 
AS AID 
FROM rsi 
WHERE rid='7174'