1

你好我有mysql选择。我要从核心中选择 loc。这个 loc 必须从具有 dateid=('".$dateid."') 和 location=('".$id."') 的行中选择,我还需要在 WHERE 中添加两个条件。我的意思是我可以像WHERE dateid=('".$dateid."') AND location=('".$id."') AND BETWEEN '2012-10-1' AND '2012-10-4 '"这不起作用。我如何添加这个时间跨度?

$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]];}

}

我可以在哪里添加开始日期和结束日期?我怎样才能做到这一点?

4

1 回答 1

0

只需删除前两个中的大括号,然后使用运算符添加剩余的两个过滤器AND。你应该很好,即

  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') ;

我假设dateidandid是数字字段,而startdateandenddate是包含日期值的字符串值,例如12/12/2012.

请使用正确的列名和变量名。还提供字符串的日期格式。

于 2012-12-13T02:29:09.170 回答