免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2366 | 回复: 4
打印 上一主题 下一主题

前天晚上的 22:00 和 昨天晚上22:00 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-12-13 15:44 |只看该作者 |倒序浏览
sql 实现 前天晚上的 22:00 和 昨天晚上22:00 的 sql 如何写

我写了一个如下

select concat(subdate(curdate(), 2)," 22:00:00");
select concat(subdate(curdate(), 1)," 22:00:00");


有更简洁的写法 欢迎跟帖

论坛徽章:
0
2 [报告]
发表于 2010-12-14 19:47 |只看该作者
贡献这个 date_format(startDate,'%d/%m/%Y')='13/12/2010
各种输入导致格式不统一  

但 我觉得 select date('2010-1-1 12:00:00');
+---------------------------+
| date('2010-1-1 12:00:00') |
+---------------------------+
| 2010-01-01                |
+---------------------------+
1 row in set似乎更好

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:58:11
3 [报告]
发表于 2010-12-25 18:34 |只看该作者
这个如何,不过理解起来费劲些:
SELECT TIMESTAMPADD(hour,-2,curdate());

论坛徽章:
0
4 [报告]
发表于 2010-12-27 19:02 |只看该作者
昨天晚上22:00  SELECT TIMESTAMPADD(hour,-2,curdate());
前天晚上22:00  SELECT TIMESTAMPADD(hour,-26,curdate());

感谢楼上
附带
SELECT DATE_SUB(curdate(), INTERVAL 1 DAY);
或者
SELECT curdate() - INTERVAL 1 DAY;

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:58:11
5 [报告]
发表于 2010-12-27 19:59 |只看该作者
这样吧:
昨天晚上22:00  SELECT DATE_SUB(curdate(), INTERVAL 2 hour);
SELECT curdate() - INTERVAL 2 hour;
前天晚上22:00
SELECT curdate() - INTERVAL '1,2' day_hour;

最后一个可以变为通用的了,还挺直观,以前时间用减,将来用加,括号内是天,小时。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP