這句法只是給了我用例和COALESCE
不正確的語法附近mentorname無益的錯誤
我怎麼更新,迫使它來顯示結果?
SELECT COALESCE(case when
mentorname LIKE '%Med%' THEN 'MedTronics' end
mentorname LIKE '%Zi%' THEN 'Zinamice' end
, 'Total') As [Prov Source]
從數據庫1
這句法只是給了我用例和COALESCE
不正確的語法附近mentorname無益的錯誤
我怎麼更新,迫使它來顯示結果?
SELECT COALESCE(case when
mentorname LIKE '%Med%' THEN 'MedTronics' end
mentorname LIKE '%Zi%' THEN 'Zinamice' end
, 'Total') As [Prov Source]
從數據庫1
試試這個:
SELECT COALESCE(CASE
WHEN mentorname LIKE '%Med%'
THEN 'MedTronics'
WHEN mentorname LIKE '%Zi%'
THEN 'Zinamice'
END
, 'Total') As [Prov Source]
雖然可以簡化查詢並獲得完全擺脫COALESCE
,並只留下CASE
:
SELECT
CASE
WHEN mentorname LIKE '%Med%'
THEN 'MedTronics'
WHEN mentorname LIKE '%Zi%'
THEN 'Zinamice'
ELSE 'Total'
END AS [Prov Source]
要保持這個簡單,你可以用嵌套完成同樣的事情點聲明和避免COALESCE
完全...
SELECT
[Prov Source] =
CASE WHEN mentorname LIKE '%Med%' THEN
'MedTronics'
ELSE
CASE WHEN mentorname LIKE '%Zi%' THEN
'Zinamice'
ELSE
'Total'
END
END
嵌套'CASE'語句不是必需的。 –
@RaduGheorghiu必要嗎?但是,它說明了正確的CASE語句結構和OP所熟悉的數據,並且錯誤地格式化了CASE語句是他問題的根源。 – LDMJoe
替代'else'對後的第一個''end'「MedTroncis''結束意味着案件的終結,而是你顯然有別的。並添加'when'第二mentorname之前,請參閱[MSFT求助](https://msdn.microsoft.com/en-us/library/ms181765.aspx) – xQbert
@xQbert產生不正確的語法錯誤附近LIKE – user2676140
1個END CASE –