sql找到今天,明天和昨天的生日

时间:2016-10-31 06:39:21

标签: mysql

在sql我试图连接到数据库并找到今天,明天和昨天的生日,sql代码看起来像这样

SELECT 
Emp_Name,
DATE_FORMAT(Emp_DOB,'%d-%b') AS dob
FROM mldob.tbl_mldob WHERE  
    DATE_FORMAT(Emp_DOB,'%m-%d') IN (
      DATE_FORMAT(CURDATE() - INTERVAL 1 DAY,'%m-%d'),
      DATE_FORMAT(CURDATE(),'%m-%d'),
      DATE_FORMAT(CURDATE()+INTERVAL 1 DAY,'%m-%d')
  )
  order by(emp_dob);

但是EMP_DOB列显示为空,并且相同的MySql查询在mysql workbench中正常工作。所以任何人都可以建议我在哪里出错,并提出可能的解决办法。

提前感谢。

1 个答案:

答案 0 :(得分:1)

使用Emp_DOB代替'dob'

 SELECT 
    Emp_Name,
    DATE_FORMAT(Emp_DOB,'%d-%b') AS  Emp_DOB
    FROM mldob.tbl_mldob WHERE  
        DATE_FORMAT(Emp_DOB,'%m-%d') IN (
          DATE_FORMAT(CURDATE() - INTERVAL 1 DAY,'%m-%d'),
          DATE_FORMAT(CURDATE(),'%m-%d'),
          DATE_FORMAT(CURDATE()+INTERVAL 1 DAY,'%m-%d')
      )
      order by(emp_dob);