首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编写多堆查询的if条件,如

如何编写多堆查询的if条件,如
EN

Stack Overflow用户
提问于 2017-01-19 02:16:29
回答 3查看 38关注 0票数 1

我有3个查询,比如

代码语言:javascript
复制
$q1 = select email from tbl students
$q2 = select email from tbl corporates
$q3 = select email from tbl institutes

我想检查所有3个表,如果电子邮件计数是零,那么只有这样做,我可以这样写:

代码语言:javascript
复制
if(mysqli_num_rows($q1) || mysqli_num_rows($q2)  || mysqli_num_rows($q3) ==0){
proceed to process. 
}else{
do nothing
}

我的问题是,这是一种正确的方法,还是更好地留下我需要学习的东西。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-01-19 02:46:08

您需要使用&而不是||,并检查每个mysql对象的行数

代码语言:javascript
复制
if(mysqli_num_rows($q1) == 0 && mysqli_num_rows($q2) == 0 && mysqli_num_rows($q3) ==0){
    //proceed to process. 
} else {
    //do nothing
}
票数 1
EN

Stack Overflow用户

发布于 2017-01-19 02:49:48

您应该首先执行这些查询,这样您将拥有:

代码语言:javascript
复制
$db = mysqli_connect("localhost","my_user","my_password","my_db");
$q1 = "select email from tbl students";
$q2 = "select email from tbl corporates";
$q3 = "select email from tbl institutes";

$db_q1 = mysqli_query($db, $q1);
$db_q2 = mysqli_query($db, $q2);
$db_q3 = mysqli_query($db, $q3);

if(mysqli_num_rows($db_q1) == 0 && mysqli_num_rows($db_q2) == 0 && mysqli_num_rows($db_q3) == 0) {
proceed to process. 
}
票数 1
EN

Stack Overflow用户

发布于 2017-01-19 03:22:24

使用mysqli_multi_query()可以更轻松地进行尝试

$con=mysqli_connect("localhost","my_user","my_password","my_db");// Check connection

if (mysqli_connect_errno()) {

代码语言:javascript
复制
  echo "Failed to connect to MySQL: " . mysqli_connect_error();   

}

代码语言:javascript
复制
$sql = select email from tbl students";
$sql .= select email from tbl corporates";
$sql .= "select email from tbl institutes";   

// Execute multi query   

if (mysqli_multi_query($con,$sql)){     

do{   // Store first result set   

    if ($result=mysqli_store_result($con)) {  // Fetch one and one row

       if (mysqli_fetch_row($result) == 0)  {    

           //your code here
    }  
 }  

}

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41726642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档