-1

我有一个搜索查询,它动态地将搜索参数 LIKE "%keyword%" 添加到查询中。我的问题是:搜索参数的顺序重要吗?

假设我的数据库中有 4 条记录。

1. 2012 bmw 335,
2. 2013 bmw x3,
3. 2012 audi a4,
4. 2012 Benz clk

当我搜索 2012 bmw x3 时,结果返回记录 1、3 和 4,但没有记录 2。除了搜索之外,我会返回所有 4 条记录。为什么会这样?我使用“OR”来链接每个搜索参数。

这是我的查询:

SELECT * 
FROM for_sale 
WHERE message LIKE "%2012%" OR "%bmw%" OR "%x3%"
4

1 回答 1

3
SELECT * 
FROM for_sale 
WHERE message LIKE "%2012%" OR message LIKE "%bmw%" OR message LIKE "%x3%"

This is what you're after - remember that OR doesn't bind to LIKE possibilities!

于 2012-11-17T22:15:02.353 回答