【发布时间】:2017-01-31 00:07:07
【问题描述】:
我有一个包含员工的数据库,所有员工都有根据他们的经验(从雇用日期开始计算)的薪酬水平,但有些人的收入更高,因为以前的经验。我有两个表员工表(有关员工的详细信息,包括他们的工资级别编号)和工资级别表(工资级别的详细信息) 多年的经验是计算出来的。我的问题是让所有收入超过他们工资水平的员工说他们的收入。一切都与视图相关联。
SELECT Accountant_Name, Hire_Date, Pay_Level_Name, 'Pay_Level_No'
CONVERT (INT,Experience_in_Years) as 'XP in years'
FROM accountant_view;
那么我如何查看每个员工的工资水平是否与该特定工资水平编号的工资匹配(工资在工资水平表中) 我不确定我是否以正确的方式询问,但我们将不胜感激。
CREATE TABLE paylevel
(paylevel_no SMALLINT IDENTITY (1,1),
paylevel_name VARCHAR (25) NOT NULL,
annual_pay MONEY NOT NULL,
min_experience CHAR (3) NOT NULL,
CONSTRAINT paylevel_pk PRIMARY KEY (paylevel_no)
);
GO
CREATE TABLE accountant
(accountant_id INT NOT NULL IDENTITY (01, 1),
branch_id SMALLINT NOT NULL,
paylevel_no SMALLINT NOT NULL,
first_name VARCHAR (20) NOT NULL
【问题讨论】:
-
因此您正试图让所有这些员工都拥有以前的经验。对吗?
-
我试图让所有收入超过其指定工资水平的用户。所以是的,我试图让用户有以前的经验,但用户是否有以前的经验不在数据库中。只有他们为公司工作的年数。谢谢。
-
你能给出两张表的结构吗?
-
@WaqasShabbir 我做到了。对不起,我没有早点。
-
你的表结构我不清楚,首先它没有给出该会计师(员工)的任何当前工资,其次在 ACCOUNTANT 表中,hireDate 在哪里?
标签: sql-server