1

我正在生成以下查询作为我们系统的一部分:

SELECT * FROM (`videos`) WHERE (
    `videos`.`title` LIKE "%apple%" 
  OR WHERE 
    `videos`.`byline` LIKE "%apple%" 
  OR WHERE `videos`.`description` LIKE "%apple%"
);

但是,这会引发语法错误。

那么这是什么一回事?

请注意,我需要括号,因为这三个where是链接的,通常后面跟着单独AND WHERE

4

3 回答 3

4

Sql 语句在文字值周围使用单引号。在这种情况下,也只需要一个 where 子句。只需使用一个 where 子句,然后用于or连接谓词。该脚本还有一些不需要的括号。

最终结果如下所示:

SELECT * FROM `videos` WHERE
    `videos`.`title` LIKE '%apple%' OR 
    `videos`.`byline` LIKE '%apple%' OR 
    `videos`.`description` LIKE '%apple%';
于 2013-01-24T10:39:45.580 回答
0

是 OR WHERE 有效的 SQL 吗?试试这个:

SELECT * FROM (`videos`) WHERE (
    `videos`.`title` LIKE "%apple%" 
  OR  
    `videos`.`byline` LIKE "%apple%" 
  OR `videos`.`description` LIKE "%apple%"
);
于 2013-01-24T10:42:09.920 回答
0

将“ OR WHERE ”替换为“ WHERE ”,将双引号替换为单引号“--->”

于 2013-01-24T10:43:55.300 回答