以下代码无法正常工作。我希望所有的名字都与科学有关,除了'科学评估'这样的名字我如何排除像'科学评估'这样的名字,并保留其他行的科学名称。我的主题名称没有'科学'的名称
$subjectScience = $this->Students->Subjects->find('list')
->select(['id', 'name'])
->where(['Subjects.name not LIKE' => '%assessment%'])
->andWhere(['Subjects.name LIKE' => '%physics%'])
->orWhere(['Subjects.name LIKE' => '%chemistry%'])
->orWhere(['Subjects.name LIKE' => '%biology%'])
->orWhere(['Subjects.name LIKE' => '%science%','Subjects.name not LIKE' => '%assessment%']) //doesnt work as i expect
->order(['Subjects.name' => 'asc']);
答案 0 :(得分:0)
如果您只想要特定的字符串,那么为什么不使用赋值运算符。所以尝试使用:
'Subjects.name' => 'science'
而不是:
'Subjects.name LIKE' => '%science%'