“'字段列表中的未知列'选择

时间:2015-01-20 13:39:26

标签: php mysql

我已经查看了与此相关的其他15个左右的答案,并且没有找到有效的答案。这是负责的代码:

function count_distinct($table, $field, $from, $match, $other='Other'){
    try{
        $ret = array();
        $query = 'SELECT '.$table.'.'.$field.', COUNT(*) AS num FROM  '.$from;
        $query .= ($match) ? ' WHERE '.$match : '';
        $query .= ' GROUP BY `'.$table.'`.`'.$field.'`';
        $q = mysqli_query($this->con, $query);
        if (!$q) {
            throw new Exception('Error executing query ' . $query . ' ' . mysqli_error($this->con));
        } else {
            ...
        }
        return $ret;
    }
    catch(Exception $e){...     }
}

我删除了一些似乎工作正常的处理代码。此函数的输入是代码生成的,不是客户端/用户生成的,并且没有空格或符号。

我收到此错误:

Error executing query SELECT interventions.iTYPE, COUNT(*) AS num
                  FROM  interventions JOIN INC ON INC.form_id = interventions.form_id JOIN FORMS ON INC.form_id=FORMS.form_id WHERE `interventions`.`iCAT` = "IV/IO" AND INC.`Pt.AgeRange` <> "Manikin/Lab" AND FORMS.course_id="15" GROUP BY `interventions`.`iTYPE` Unknown column 'interventions.iTYPE' in 'field list'

表格配置如下:

interventions
  form_id (int (10))
  iCAT (varchar(20))
  iTYPE (varchar(20))
  Result (tinyint(1))

INC
  form_id (int(10))
  Pt.AgeRange (varchar(20))

FORMS
  form_id (int(10))
  course_id (int(20))

疯狂的部分是,如果我复制/粘贴错误信息中打印的查询并在Sequel Pro中运行它可以正常工作,没有错误,并且打印结果没有问题。

我在我的智慧结束 - 我尝试重新启动服务器,更改字段列表的顺序,删除GROUP BY子句,添加返回标记,删除它们...我&#39;我没有想法。

0 个答案:

没有答案