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,得不到数据。

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

select * from a where request_begin_time >='2016/05/10 02:20:30' and request_begin_time<='2016/05/10 04:20:30'