我用这么一个查询:
select workers.ID,
workers.Name,
workers.Sex,
Role.RoleName,
workers.Email,
Department.DepartmentName
from workers,role,department
where
workers.RoleKey in (select number from role where RoleName='人事助理') and department.number = workers.departmentkey
查询结果如下:
编号 姓名 性别 职位 油箱 部门
001002 刘 女 总经理 [email protected] 人事部
001002 刘 女 人事经理 [email protected] 人事部
001002 刘 女 人事助理 [email protected] 人事部
001002 刘 女 部门经理 [email protected] 人事部
001002 刘 女 普通员工 [email protected] 人事部我的预期结果是要:
编号 姓名 性别 职位 油箱 部门
001002 刘 女 人事助理 [email protected] 人事部
我明明在查询语句中限制了RoleName=人事助理啊。
怎么出现其他职位了呢?
该怎么写。谢谢!
select workers.ID,
workers.Name,
workers.Sex,
Role.RoleName,
workers.Email,
Department.DepartmentName
from workers,role,department
where
workers.RoleKey in (select number from role where RoleName='人事助理') and department.number = workers.departmentkey
查询结果如下:
编号 姓名 性别 职位 油箱 部门
001002 刘 女 总经理 [email protected] 人事部
001002 刘 女 人事经理 [email protected] 人事部
001002 刘 女 人事助理 [email protected] 人事部
001002 刘 女 部门经理 [email protected] 人事部
001002 刘 女 普通员工 [email protected] 人事部我的预期结果是要:
编号 姓名 性别 职位 油箱 部门
001002 刘 女 人事助理 [email protected] 人事部
我明明在查询语句中限制了RoleName=人事助理啊。
怎么出现其他职位了呢?
该怎么写。谢谢!
解决方案 »
- 旧题,求SQL语句,SQL 2000
- 插入的SQL 语句写法
- 紧急求助!!怎么样相互补充两行的数据啊??
- 如何在存储过程定位某一行,如我要看存储第100行是哪个语句,怎么看呢,请各位指教,在线等啊
- 如何往sqlserver2000数据库中插入回车换行?
- 对用户SF,对数据库A表,只有查询的权限
- 原来的表新增物理列,速度。
- sql 2000 不能在windows2003 上装的吗??
- 请问MS SQL数据库设计,怎么做到产品递归无限分类,怎么设计才有利于Web from和 Win Form程序读写?谢谢!
- 有点难度的问题。急
- 使用top 慢好多.
- 请问sql server2000企业版是不是不能装在xp上??
我还是不明白workers.RoleKey in (select number from role where RoleName='人事助理')已经有限制了是“人事助理'”。为什么还会出现多余的项呢?
w.Email, D.DepartmentName
FROM workers w, department d, role r
WHERE w.rolekey=r.number
AND d.number=w.departmentkey
AND r.rolename='人事助理'