MySQL返回所有,但我只想得到一些结果
我想从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
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代码生成的,并且字数不同