Php mysql的where子句中的条件日期未筛选

Php mysql的where子句中的条件日期未筛选,php,mysql,Php,Mysql,我已经编写了上面的代码,它从用户那里获取其值。工作正常,但日期筛选器不工作。而是显示表中的所有记录,即使提供了日期 可能是什么问题 $exp\u query=“选择不同的物业名称、物业id、水费、银行费、费用1说明、其他费用1, 费用说明、其他费用、日期”; $exp_query.=“来自费用”; $exp\u query.=“其中 1=1 和(property_name='“$property.” 或介于“.$datefro.”和“.$dateto.”之间的日期 "; 和或之间有区别,如何使用

我已经编写了上面的代码,它从用户那里获取其值。工作正常,但日期筛选器不工作。而是显示表中的所有记录,即使提供了日期

可能是什么问题

$exp\u query=“选择不同的物业名称、物业id、水费、银行费、费用1说明、其他费用1,
费用说明、其他费用、日期”;
$exp_query.=“来自费用”;
$exp\u query.=“其中
1=1
和(property_name='“$property.”
或介于“.$datefro.”和“.$dateto.”之间的日期
";

和或之间有区别,如何使用或与和条件一起使用也有区别。 如果在括号中使用了OR条件,请检查它们

$exp_query = "SELECT DISTINCT property_name, property_id, Water_charges, bank_charges, charge_1_description, other_charges_1,
                charge_2_description, other_charges_2, dates ";
$exp_query .="FROM expenses ";
$exp_query .="WHERE property_name= '".$property."'
              AND (dates BETWEEN '".$datefro."' AND '".$dateto."' )";

假设您在MYSQL查询中使用了正确的条件

只需使用MYSQL
DATE()
函数,如:

$exp_query = "SELECT DISTINCT property_name, property_id, Water_charges, bank_charges, charge_1_description, other_charges_1,
                charge_2_description, other_charges_2, dates ";
$exp_query .="FROM expenses ";
$exp_query .="WHERE
              1=1
              AND (property_name= '".$property."'
                    OR DATE( dates ) BETWEEN '".$datefro."' AND '".$dateto."' )
                ";

什么是“日期”字段类型?请提供一些示例数据、您得到的结果以及该示例数据的预期结果。@RanaGhosh其日期类型。@Viki888这是结果的屏幕截图。如您所见,第二个表的结果中的日期超过了date from和date提供的日期to@samuelkungu请检查我的回答你的解决方案带来了更多的问题。它的工作原理与以前不同。您能明确您所说的“正确条件”是什么意思吗?正确条件意味着我们假设您为where条件编写了正确的逻辑。@RanaI认为用户因为错误使用或条件而获得了额外的行数。