在我的sales
表格中,sale_date
字段为date
格式
当我运行查询时,
SELECT * FROM `sales` WHERE sale_date=2014-10-01;
没有结果。实际上,sale_date
字段包含值 2014-10-01 。
答案 0 :(得分:2)
没有引号,这被解释为三个整数与它们之间的减法运算符(-
):2014 - 10 - 01 = 2003
。您需要将此值表示为date
,例如,使用str_to_date
函数:
SELECT *
FROM `sales`
WHERE sale_date = STR_TO_DATE('2014-10-01', '%m-%d-%Y');
答案 1 :(得分:1)
使用日期引号。
你可以简单地写下来。
SELECT * FROM
{销售{1}}
答案 2 :(得分:1)
您可以使用
SELECT * FROM `sales` WHERE sale_date between "2014-10-01 00:00:00" and "2014-10-01 23:59:59";
OR
SELECT * FROM `sales` WHERE date(sale_date) = "2014-10-01";
如果记录非常大,那么第二次查询将需要时间来响应,而不是第一次。