在给定以下条件的情况下,从出勤表中选择保留数据

时间:2015-02-07 16:09:02

标签: mysql sql

我有表attendance中存储的员工的出勤数据,其中包含以下列名称:

  • emp_id (员工ID)
  • 日期
  • 类型(离开,缺席等)

(还有其他人,但为了简单起见我省略了它们)

我的目标是检索员工休假的给定月份的所有日期(类型='离开') 以及上个月的最后一次休假,如果任何

使用两个查询(我使用PHP来处理数据)很容易做到这一点,但有没有办法可以在一个查询中完成?

2 个答案:

答案 0 :(得分:0)

SELECT * FROM table_name
WHERE type="Leave" AND
date <= (CURRENT_DATE() - 30)

选择您想要的字段等,然后使用mysql&#39; s CURRENT_DATE()函数选择组合的where子句。我在一个月内减去了30天30天。

如果日期是日期列,则会返回1个月或更长时间之前离开的所有人。

编辑:

如果您想要特定日期,请像这样更改第2个月:

date <= (date_number - 30)

答案 1 :(得分:0)

我正在回答我自己的问题以便关闭它。正如@bpgergo在评论中指出的那样,UNION将在这里采取行动。