在MySQL中显示21-NOV-19891989-11-21之前雇用的员工的所有员工

问题描述

我的数据库中有一个名为“ employee”和“ hire_date”列的表。我试图触发以下查询,但设置为空:

MysqL> SELECT * from employees
    -> WHERE hire_date < 1989-11-21;

       Empty set,1 warning (0.00 sec)

尽管我有1989年11月21日之前的hirate_date记录。有人可以帮我吗?

解决方法

MySQL中的日期文字通常需要单引号,因此请使用:

SELECT *
FROM employees
WHERE hire_date < '1989-11-21';

请注意,这假设您的hire_date列实际上是日期或日期时间,或者如果是文本,则以YYYY-MM-DD格式存储文本日期。