我不知道我的查询中的问题是什么,但它会引发一些错误。
select * from tbl_emailswipes where
eswipes_title like '% 1939 %',
or eswipes_title like '% 1939%',
or eswipes_title like '%1939 %',
or eswipes_title like '%1939%',
or eswipes_text like '% 1939 %',
or eswipes_text like '% 1939%',
or eswipes_text like '%1939 %',
or eswipes_text like '%1939%'
,错误是
1064 - 您的SQL语法出错;检查与MariaDB服务器版本对应的手册,以便在“
附近使用正确的语法or eswipes_title like '% 1939%', or eswipes_title like '%' at line 2
请帮助解决此问题
答案 0 :(得分:1)
您在查询中使用(,)。删除它。
select * from tbl_emailswipes where
eswipes_title like '% 1939 %'
or eswipes_title like '% 1939%'
or eswipes_title like '%1939 %'
or eswipes_title like '%1939%'
or eswipes_text like '% 1939 %'
or eswipes_text like '% 1939%'
or eswipes_text like '%1939 %'
or eswipes_text like '%1939%'
答案 1 :(得分:1)
不需要逗号。但是,这将更容易写成:
select es.*
from tbl_emailswipes es
where concat(' ', es.eswipes_title, ' ') like '% 1939 %' or
concat(' ', es.eswipes_text, ' ') like '% 1939 %';
此查询中的逻辑简化了比较。它在列的开头和结尾添加了一个分隔符(' '
)。这样可以更容易地在模式中找到单词。