我在这个表中有一个表upevents
属性:
我需要选择和显示3个事件,其中日期将是最接近今天的日期。
例如,今天的日期是2016年8月3日,所以我需要显示第三,第四和第五。
测试日期:第一届赛事开始日期-2015年2月26日 测试日期:第二届赛事开始日期-2015年2月25日 测试日期:第三届赛事开始日期-2016年10月3日 测试日期:第四届赛事开始日期-2016年12月3日 测试日期:第五届赛事开始日期-2016年3月19日
$sql = "SELECT * FROM upevents ORDER BY ABS(DATEDIFF(NOW(), 'StartDate')) LIMIT 3";
使用上面的select查询,它显示了第1、第2和第3。
发布于 2016-03-08 11:22:58
您使用了错误的引号,现在StartDate
被解释为字符串值。
你需要:
$sql = "SELECT * FROM upevents ORDER BY ABS(DATEDIFF(NOW(), `StartDate`)) LIMIT 3";
^ here ^
尽管您不需要在这里引用列名,因为它不是一个保留字。
https://stackoverflow.com/questions/35865977
复制相似问题