如何在mysql的WHERE-in-SELECT中设置2个以上的过滤器
你好,我有mysql选择。我将从核心中选择loc。此loc必须从dateid=(““$dateid.”)和location=(““$id.”)的行中进行选择。我还需要在其中添加两个条件。我的意思是,我可以像一个这样做,其中dateid=(“$dateid.”)和location=(“$id.”)以及介于“2012-10-1”和“2012-10-4”之间,这不起作用。 如何添加此时间跨度如何在mysql的WHERE-in-SELECT中设置2个以上的过滤器,mysql,Mysql,你好,我有mysql选择。我将从核心中选择loc。此loc必须从dateid=(““$dateid.”)和location=(““$id.”)的行中进行选择。我还需要在其中添加两个条件。我的意思是,我可以像一个这样做,其中dateid=(“$dateid.”)和location=(“$id.”)以及介于“2012-10-1”和“2012-10-4”之间,这不起作用。 如何添加此时间跨度 $SQL = "SELECT loc FROM core WHERE dateid=('".$dateid."
$SQL = "SELECT loc FROM core WHERE dateid=('".$dateid."') AND location=('".$id."')";
$result = mysql_query($SQL);
if($result){
$db_field = mysql_fetch_array($result);
$rs[$i]=$db_field[$select[$i]];}
}
我可以在何处添加开始日期和结束日期吗?
我该怎么做呢?只要去掉前两个大括号,然后用
和
操作符添加剩下的两个过滤器就行了
SELECT loc FROM core WHERE dateid=$dateid AND location=$id
AND startdate = STR_TO_DATE('$startdate', '%d/%m/%y')
AND enddate = STR_TO_DATE('$enddate', '%d/%m/%y') ;
我假设dateid
和id
是数字字段,而startdate
和enddate
是包含日期值的字符串值,例如12/12/2012
请使用正确的列和变量名。同时提供字符串的最新格式。在何处添加两个条件是什么意思?删除变量周围的大括号-它们在那里不需要。@RomanNewaza:.您好,我可以在“2012-10-1”和“2012-10-4”之间添加吗enddate@ganaa在这种情况下,在之间使用
,例如STR_TO_date('$startdate','%d/%m/%y')和STR_TO_date('$enddate','%d/%m/%y')之间的date列。