【发布时间】:2014-08-23 18:19:30
【问题描述】:
有一张表,里面有员工的价值观和他们的中间名
ID FIRST NAME MIDDLE NAMES
1 'ABC'
2 'Jck' w
3 'Zoya' A
现在有另一个带有一些值的表 B
ID FIRST NAME MIDDLE NAMES Flag
4 'XYZ'
2 'Jck'
1 'ABC' A
现在我想在表 B 中检查,如果 B 中的中间名与表 A 的中间名相同。即中间名存在于表 A 而不是 B 中针对相同的员工编号,反之亦然,那么标志应该是返回为“N”
我正在使用查询:
update table b
set flag='N'
WHERE NOT EXISTS ( SELECT 1 FROM TABLE B
WHERE B.MIDDLE_NAMES=A.MIDDLE_NAME
AND ID=A.ID)
【问题讨论】:
-
如果你想返回一个值,你用
update做什么?你真正想做什么? -
当特定员工的两个表中的中间名存在任何差异时,我想将标志设置为“N”
标签: sql oracle plsql plsqldeveloper