0

我有以下数据库设计:

Employee Table: EmployeeID, Name, OrgCode
Department Table: OrgCode, DepartName
CompleteSurvey Table: ID, RespondentID

现在,由于我在 Employee 表中有一些员工在 OrgCode 列中有 Null 值,我想用“Others”值替换 NULL 值,因为部门表中的“Others”用(OrgCode = 4)。那么有什么问题可以帮我做这件事吗?

4

4 回答 4

3

使用此查询:

UPDATE Employee SET OrgCode = 4 WHERE OrgCode IS NULL
于 2012-05-20T12:43:16.867 回答
1

这应该适用于您作为对单个数据库的一次性更新:

update employee
  set OrgCode = 4
where OrgCode is null

但是,在其他数据库中,“OrgCode”可能不是第 4 位,因此这里有一个更新应该适用于您组织中的所有数据库(或者如果“OrgCode”不是第 4 位)。

update employee
  set OrgCode = d.OrgCode
from departments d
where d.DepartmentName = 'Others'
  and employee.OrgCode is null

此外,您可能需要检查您正在使用的 DBMS,看看您是否可以在表的列上设置默认值。这样,每当发生插入并且缺少 OrgCode 时,都会自动填写“Others”。

于 2012-05-20T12:44:01.650 回答
0

好引擎是不同的,但想法总是一样的:

update employee set OrgCode = 'Others' where OrgCode IS NULL
于 2012-05-20T12:42:36.697 回答
0

我会试试这个:

UPDATE employee
SET    orgcode = NVL( orgcode, 4 );
于 2012-05-20T13:06:27.627 回答