有一个DATETIME
名为“created_at”的表。我尝试执行两个这样的查询:
SELECT * FROM myTable WHERE created_at BETWEEN '2015-03-15 10:25:00' AND '2015-03-25 10:30:00';
SELECT * FROM myTable WHERE created_at BETWEEN STR_TO_DATE('2015-03-15 10:25:00', '%Y-%m-%d %H:%i:%s') AND STR_TO_DATE('2015-03-25 10:30:00', '%Y-%m-%d %H:%i:%s');
我总是使用第一个查询,但最近看到一篇文章描述了第二种方法是比较的最佳方法DATETIME
。不幸的是,它没有解释为什么这种方法是最好的方法。
现在,我有一些问题:
- 这两种方法有什么区别吗?
- 哪种方式更可取?
谢谢!