MySQL返回所有,但我只想得到一些结果

MySQL返回所有,但我只想得到一些结果,mysql,Mysql,我想从MySQL中获取行,其中列nazwa包含单词zero和no,但我得到所有结果 MySQL代码: SELECT *, IF (nazwa LIKE '%Zero%', 1, 0)+IF (nazwa LIKE '%no%', 1, 0) AS nazwa FROM odc_ListaAnime WHERE statuts='zaakceptowane' HAVING nazwa > 0 ORDER BY id DESC; 您有两个名为nazwa的列,这使编译器感到困惑。如果要使用My

我想从MySQL中获取行,其中列
nazwa
包含单词
zero
no
,但我得到所有结果

MySQL代码:

SELECT *, IF (nazwa LIKE '%Zero%', 1, 0)+IF (nazwa LIKE '%no%', 1, 0) AS nazwa FROM odc_ListaAnime WHERE statuts='zaakceptowane' HAVING nazwa > 0 ORDER BY id DESC;

您有两个名为
nazwa
的列,这使编译器感到困惑。如果要使用MySQL扩展名,在
having
子句中包含别名,请将结果命名为其他名称:

SELECT *,
       IF(nazwa LIKE '%Zero%', 1, 0) + IF(nazwa LIKE '%no%', 1, 0) AS NumNazwa
FROM odc_ListaAnime
WHERE statuts = 'zaakceptowane'
HAVING Numnazwa > 0
ORDER BY id DESC;
然而,为什么不写:

SELECT *,
       IF(nazwa LIKE '%Zero%', 1, 0) + IF(nazwa LIKE '%no%', 1, 0) AS NumNazwa
FROM odc_ListaAnime
WHERE statuts = 'zaakceptowane' AND
      (nazwa LIKE '%Zero%', 1, 0 OR nazwa LIKE '%no%', 1, 0)
ORDER BY id DESC;

如果不需要,可以从
选择
中删除表达式。

因为此代码是由php代码生成的,并且字数不同