qq_25339957 2016-05-09 08:37 采纳率: 0%
浏览 2511

Mysql Timestamp 无法时间戳查询

在做SQL优化时,发现时间查询上耗时较大,想优化一下。

字段类型是Timestamp

查询SQL:
工作正常SQL:
SELECT count(*) FROM TRADE_RECORD t where UNIX_TIMESTAMP(t.TRADE_TIME) BETWEEN 1462723200 AND 1462723200;

工作失败SQL:
SELECT count(*) FROM TRADE_RECORD t where t.TRADE_TIME BETWEEN 1462723200 AND 1462723200;

请教为什么下面的SQL会失败,我给timestamp做了索引,如果用上面正常的SQL的话索引好像没有什么效果,下面失败的SQL的话,查询很快,但结果是0,得不到数据。

  • 写回答

2条回答

  • sxwws 2016-05-10 01:32
    关注

    你这样使用timestamp比较奇怪。你直接当timestamp就是个时间类型进行使用不就好了吗?
    比如select a where request_begin_time >='2016/05/10 02:20:30' and request_begin_time<='2016/05/10 04:20:30'

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器