试图选择以特殊字母开头和结尾的对象

时间:2018-10-19 13:49:19

标签: mysql sql extract

我想提取以ab开头并以ab结尾的对象。 下面是我的解决方案。我试图弄清楚为什么这是错误的:

select objects from the table
where objects like "a%" or "b%" and
      objects like "%a" or "%b";

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

使用比较运算符时,必须在每个条件上指定列名称。通常会犯此错误,所以请放心,您不是第一个,最肯定不会是最后一个。

运行时对其的解释方式为WHERE (CONDITION) OR (something unknown so I'll make it true);,但通过在两种情况下都指定列名,它将为您提供所需的功能WHERE (CONDITION) OR (SOMEOTHERCONDITION);

SELECT objects 
FROM   the table 
WHERE  objects LIKE "a%" 
        OR objects LIKE "b%" 
           AND objects LIKE "%a" 
        OR objects LIKE "%b";