Php mysql查询中的多个where语句
我的php中有一个sql查询,如下所示Php mysql查询中的多个where语句,php,sql,Php,Sql,我的php中有一个sql查询,如下所示 $query1 = "SELECT time, air FROM pi_sensors_network WHERE date BETWEEN '".$date1."' AND '".$date2."'"; 但是现在我想在我的sql查询中包含一个额外的where语句,它是 WHERE location = '".$location."'"; 当然我也有我的表格 <form action="" method="get"> Sel
$query1 = "SELECT time, air FROM pi_sensors_network WHERE date BETWEEN '".$date1."' AND '".$date2."'";
但是现在我想在我的sql查询中包含一个额外的where语句,它是
WHERE location = '".$location."'";
当然我也有我的表格
<form action="" method="get">
Select Your location:
<select name="location" onchange="javascript: submit()">
<option>---</option>
<option>FC3</option>
<option>T12</option>
</select>
</form>
以及从我的数据库中获取位置的php
<?php
if(isset($_POST['location']))
{
echo "<b>".$_POST['location']."</b><br><br>";
}
?>
<?php
$location = 'FC3';
if( isset($_GET['location'] ))
{
$location = $_GET["location"];
}
?>
如何在我的sql查询中包含多个where语句?您可以使用任意数量的where子句来使用和分隔
mysql查询中的多个where语句
不要放多个WHERE子句,以防你想到它
$query1 = "SELECT time, air FROM pi_sensors_network
WHERE date BETWEEN '".$date1."' AND '".$date2."'"
AND location = '".$location."'";
或者这个:
$query1 = "SELECT time, air FROM pi_sensors_network
WHERE location = '".$location."'" AND date BETWEEN '".$date1."'
AND '".$date2."'";
注意:两者都可以,这只取决于您的场景/选择
有
如果在第一个where语句之后需要更多where语句,请将它们写成:和 在您的示例中:
SELECT time, air FROM pi_sensors_network
WHERE date BETWEEN '".$date1."' AND '".$date2."'"
AND location = '".$location."'";
您可以使用和在查询中执行多个WHERE条件。试着这样做:
$query1 = "SELECT time, air
FROM pi_sensors_network
WHERE date BETWEEN '".$date1."' AND '".$date2."'
AND location = '".$location."'";
若设置了位置,则将在查询中插入一个新条件,若未设置,则为空
if( isset($_GET['location'] ))
{
$location = $_GET["location"];
$location_q = " AND location LIKE ".$location;
} else
{
$location_q = ""
}
$query1 = "SELECT time, air FROM pi_sensors_network WHERE date BETWEEN '".$date1."' AND '".$date2.$location_q"'";
您可以使用AND在查询中使用多个WHERE,您需要使用条件运算符连接查询条件,这取决于您的逻辑。例如,或者,在完整列表之间,这里是GET或POST方法?这两种代码都有。