cakephp独特查找错误
我使用的是cakephp2.7,需要从表中获取不同的值cakephp独特查找错误,php,mysql,cakephp,distinct,Php,Mysql,Cakephp,Distinct,我使用的是cakephp2.7,需要从表中获取不同的值 $rows = $this->Skill->find('list',array( 'conditions'=>array( 'Skill.status'=>1, 'Skill.percent >='=> 70, 'Skill.percent <='=>
$rows = $this->Skill->find('list',array(
'conditions'=>array(
'Skill.status'=>1,
'Skill.percent >='=> 70,
'Skill.percent <='=> 100,
),
'fields' => array('DISTINCT Skill.row AS row'),
//'fields' => 'DISTINCT Skill.row AS row',/*also tried*/
));
我在mysql中尝试了相同的查询,给出了相同的错误,但当我删除mysql查询中的id
列时,它运行正常
现在的问题是,skill.id
列由cakephp自动添加到查询中,它是主键
如何防止在
find()
中包含id
列?您是否尝试过按技能分组.row而不是使用select distinct?它应该会给你相同的结果,而不存在DISTINCT的问题。我已经添加了'group'=>数组('Skill.row'),
,并删除了DISTINCT关键字,但结果是错误的。你能用新的查询和你得到的数组更新你的问题吗?另外,我对cake php不太熟悉,但您应该会得到一个查询,该查询最终具有group by skill.row,而不涉及任何数组。您需要描述您想要的输出(例如,find
的返回数组的格式)。为什么要使用find
的'list'
选项?我建议您只需将查找
中的'list'
更改为'all'
。您是否尝试过按技能分组.row而不是使用select distinct?它应该会给你相同的结果,而不存在DISTINCT的问题。我已经添加了'group'=>数组('Skill.row'),
,并删除了DISTINCT关键字,但结果是错误的。你能用新的查询和你得到的数组更新你的问题吗?另外,我对cake php不太熟悉,但您应该会得到一个查询,该查询最终具有group by skill.row,而不涉及任何数组。您需要描述您想要的输出(例如,find
的返回数组的格式)。为什么要使用find
的'list'
选项?我建议您只需将查找中的'list'
更改为'all'
。可能重复的
SELECT `Skill`.`id`, DISTINCT `Skill`.`row` AS `row` FROM `mydb`.`skills` AS `Skill` WHERE `Skill`.`status` = 1 AND `Skill`.`percent` >= 70 AND `Skill`.`percent` <= 100