在我的表格中,我有一栏写着公司代码
example
DE06 or DE07
现在我需要在此表中添加一个新列,其中DE06的值为“ YES”,DE07的值为“ NO”
我尝试为De06添加一个条件,但我无法使其正常工作
ALTER Table dbo.DE06_PROJECT$
add [PROJECT_COMPANY_CODE2] nvarchar(50) null
GO
UPDATE dbo.DE06_PROJECT$ SET [PROJECT_COMPANY_CODE] ='YES' where([COMPANY_CODE]='DE06')
GO
我需要基于列[COMPANY_CODE]的值的新列[PROJECT_COMPANY_CODE2],结果为“是”或“否”
我忘了提一提,将来我可能需要3种可能性:DE06为“是”,DE07为“否”,DE08为“ MAYBE”
答案 0 :(得分:0)
如果您有SQL Server,则可以申请CASE
UPDATE dbo.DE06_PROJECT$
SET [PROJECT_COMPANY_CODE] = CASE WHEN [COMPANY_CODE]='DE06' THEN 'YES' ELSE 'NO' END
答案 1 :(得分:0)
使用计算列来确保数据一致性:
ALTER TABLE dbo.DE06_PROJECT$
ADD [PROJECT_COMPANY_CODE] AS CASE [COMPANY_CODE] WHEN 'DE06' THEN 'YES'
WHEN 'DE07' THEN 'NO'
WHEN 'DE08' THEN 'MAYBE'
ELSE 'whatever' END