MySQL-选择日期 20100327 => 20100327 SELECT * FROM MyTable WHERE MyDateCol < NOW() SELECT * FROM MyTable WHERE MyDateCol < SYSDATE;
如何在MySQL中实现这一点MySQL-选择日期 20100327 => 20100327 SELECT * FROM MyTable WHERE MyDateCol < NOW() SELECT * FROM MyTable WHERE MyDateCol < SYSDATE;,mysql,syntax,date,Mysql,Syntax,Date,如何在MySQL中实现这一点 SELECT * FROM MyTable WHERE MyDateCol < TODAY() 在MySQL中,您有一个函数,它将为您提供今天的日期 所以,像这样的事情应该可以: select * from your_table where your_date_column < curdate() 引用该功能的手册页面: 以中的值形式返回当前日期 “YYYY-MM-DD”或YYYYMMDD格式, 取决于功能是否正常 在字符串或数字上下文中使用
SELECT * FROM MyTable WHERE MyDateCol < TODAY()
在MySQL中,您有一个函数,它将为您提供今天的日期
所以,像这样的事情应该可以:
select *
from your_table
where your_date_column < curdate()
引用该功能的手册页面:
以中的值形式返回当前日期
“YYYY-MM-DD”或YYYYMMDD格式,
取决于功能是否正常
在字符串或数字上下文中使用
如果您想与当前时间进行比较,而不仅仅是与当天进行比较,您可以使用以下功能:
将当前日期和时间返回为
“YYYY-MM-DD HH:MM:SS”中的值或
YYYYMMDDHHMMSS.uuu格式
使用功能:
SELECT * FROM MyTable WHERE MyDateCol < NOW()
如果MySQL支持SYSDATE,您应该使用它,而不是NOW或CURDATE,因为它更标准
SELECT * FROM MyTable WHERE MyDateCol < SYSDATE;
关于YYYYMMDD数字格式,2010年3月27日是20100327还是2040的十进制增值我现在没有可以尝试的服务器,但是考虑到手册上说的YYYYMMDD,我想你会得到20100327,我已经用我的本地MySQL服务器验证了这一点,它使用类似20100327的数字,这使得比较非常容易。您还可以将字符串日期直接转换为数字,以用于数字比较。。2010-03-27 => 20100327 => 20100327
SELECT * FROM MyTable WHERE MyDateCol < NOW()
SELECT * FROM MyTable WHERE MyDateCol < SYSDATE;