SQL不区分大小写查询的返回计数

时间:2015-01-11 19:02:41

标签: mysql sql count

我正在尝试进行查询以检查我的表中是否出现了一个名称,我需要它不区分大小写,如果它找到一个值则返回,但我似乎无法让它工作。

$dogqry = mysql_query("SELECT COUNT(id) FROM dogs WHERE UPPER(breed)=UPPER($breed_name)");

    if ($dogqry['id'] == 0){
        $errors .= "\n Breed not found. ";  
    }

1 个答案:

答案 0 :(得分:0)

看起来您的查询很好,问题在于您检索结果的方式。您正尝试访问名为id的结果字段,而查询未提供名为id的列。您应该为列添加名称,例如

$dogqry = mysql_query("SELECT COUNT(id) cnt FROM dogs WHERE UPPER(breed)=UPPER($breed_name)");
if ($dogqry['cnt'] == 0) ... //         ^^^

或使用表达式内容检索结果,如下所示:

$dogqry = mysql_query("SELECT COUNT(id) FROM dogs WHERE UPPER(breed)=UPPER($breed_name)");
if ($dogqry['COUNT(id)'] == 0) ...