2014-11-21 41 views
0

我想從STU_TYPCCASE更新new_BantuanKewanganSQL更新和CASE

UPDATE DMSTAG.dbo.TEMP_AKAUN_MARA 
SET [new_BantuanKewangan] = [STU_TYPC] 
FROM [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER] 
    (CASE 
    when [new_BantuanKewangan] = '00' then 'Yes' 
    when [new_BantuanKewangan] = '01' then 'No') 
    where DMSTAG.dbo.TEMP_AKAUN_MARA.STUDENTN = [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER].STUDENT 

錯誤

消息102,級別15,狀態1,行6
附近有語法錯誤) 」。

+0

您在您的病例陳述中缺少END。除此之外,爲什麼你要從後面的案件陳述? – bsting 2014-11-21 03:24:12

+0

您是否試圖根據'00'和'01'更新[new_BantuanKewangan]字段?如果是這樣,那麼你的聲明可能是這樣的 UPDATE DMSTAG.dbo.TEMP_AKAUN_MARA 集[new_BantuanKewangan] =(CASE \t當[new_BantuanKewangan] = '00',那麼 '是' \t當[new_BantuanKewangan] = '01 。。「然後 '否' \t端) 從[SMBM_DBPELJ] [DBPELJ] [MSTUMASTER] 其中DMSTAG.dbo.TEMP_AKAUN_MARA.STUDENTN = [SMBM_DBPELJ] [DBPELJ] [MSTUMASTER] .STUDENT – bsting 2014-11-21 03:35:37

+0

@bsting:您代碼是正確的。但是,我的情況是我想從SMBM_DBPELJ(tbl)STU_TYPC(字段)傳輸數據到TEMP_AKAUN_MARA(tbl)new_BantuanKewangan(字段)如何將上面的CASE與所有代碼結合? – 2014-11-21 03:51:08

回答

0
UPDATE DMSTAG.dbo.TEMP_AKAUN_MARA 
SET DMSTAG.dbo.TEMP_AKAUN_MARA.[new_BantuanKewangan] = 
         (CASE 
         WHEN [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER].[STU_TYPC] = '00' THEN 'Yes' 
         WHEN [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER].[STU_TYPC] = '01' then 'No') 
FROM [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER] 
WHERE DMSTAG.dbo.TEMP_AKAUN_MARA.STUDENTN = [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER].STUDENT