按日期过滤数据

时间:2017-09-29 14:32:47

标签: sql sql-server

我有问题要问。目前,我正在开发一个薪资单应用程序。但是,我坚持了这一过程的一部分。我设法显示薪水但我需要过滤某个日期才能显示薪水。

例如,今年9月,该公司已经在9月26日确定了工资,但用户只能看到它从9月28日及以上开始。因此,基本上,该计划可以显示上个月的工资单,除非9月份用户开始在9月28日看到它。

当前输出:

EMPLOYEEID  MONTH   YEAR    SALARY
E001           7    2017    2000
E001           8    2017    2000
E001           9    2017    2000
E002           7    2017    2100
E002           8    2017    2100
E002           9    2017    2100

期望输出:

EMPLOYEEID  MONTH   YEAR    SALARY
E001           7    2017    2000
E001           8    2017    2000
E002           7    2017    2100
E002           8    2017    2100

当前查询进度:

SELECT       EMPLOYEEID, MONTH, YEAR, SALARY
FROM           DBO.Salary 
WHERE         day(getdate())>=28

1 个答案:

答案 0 :(得分:1)

今天是2017-09-29,应该出现9月。在小于28的时候添加OR

select *
from dbo.Salary s1
where day(getdate())>=28
or month(getdate()) > s1.Month