请取出 BORROW表中日期(RDATE字段)为当天的所有记录?(RDATE字段为datetime型,包含日期与时间)。
您好,
select *
from BORROW
where datediff(dd,RDATE,getdate())=0
这其实考察的是几个日期函数 有如下方法: 1.dateDiff(expr1,expr2)函数 计算的是expr1-expr2的日期间隔,而expr可以日期字符串或者日期时间字符串 比如:
SELECT DATEDIFF('2021-10-01',a.create_time) FROM recommend_line_info a;
SELECT DATEDIFF('2021-10-01 10:10:10',a.create_time) FROM recommend_line_info a;
上面两种都是一样的,只会计算日期部分的天数间隔; 所以上面的问题就可以通过
SELECT DATEDIFF('2021-10-01 10:10:10',a.create_time) as datedistance FROM recommend_line_info a WHERE DATEDIFF('2021-10-01 10:10:10',a.create_time) <20;
第二种方案就是使用dataformat 函数 将日期时间格式化成只包含日期 然后再只对日期进行比较,比如:
SELECT DATE_FORMAT(a.create_time,'%Y-%m-%d') FROM recommend_line_info a WHERE DATE_FORMAT(a.create_time,'%Y-%m-%d')='2021-09-09';```
请将需求再描述清楚些
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。