MySQL查询不起作用。没有给出预期的结果

时间:2013-11-25 06:04:57

标签: php mysql

我有一个数据库,其中有4个字段要进行查询。

  1. 充值
  2. 总量a
  3. 共计b
  4. totalc
  5. 我正在运行应该返回4行的mysql查询。但什么都没回来。以下是我的询问:

    $qry=mysql_query("SELECT id FROM ".user." WHERE `topup` >'0' AND `totala`>='9' AND  `totalb`>='9' AND  `totalc`>='9'");
    while($res=mysql_fetch_row($qry)){
        echo $res['0'];
    }
    
    有什么不对? 主要问题是如果我运行任何一个查询

      

    例如:WHERE totala> ='9'

    然后它正在工作,但没有采取所有查询

1 个答案:

答案 0 :(得分:0)

您的查询将获取所有条件同时为真的行。

它将使用topup = 1和totala = 10以及totalb = 10和totalc = 10来获取行,但不会获取行topup = 0和totala = 10以及totalb = 10和totalc = 10,因为充值不大于零。

如果你想在任何这种情况下获取行,你需要使用OR语句而不是AND。

$qry=mysql_query("SELECT id FROM ".user." WHERE `topup` >'0' OR `totala`>='9' OR `totalb`>='9' OR `totalc`>='9'");