在没有使用OR的情况下,WHERE x LIKE%x%语句中是否有多个条件?
基本上我希望能够选择其中column1 LIKE%something%AND column2 LIKE%check1%OR%check2%OR%check3%
然而,使用OR删除了我对column1的第一个先前检查,但我需要这个以保持原位
以下是我目前正在使用的内容..但我想知道是否有更好的方法可以做到这一点,所以我不必重复第1列
SELECT id FROM test WHERE
column1 LIKE '%bob%' AND column2 LIKE '%something%'
OR column1 LIKE '%bob%' AND column2 LIKE '%somethingdifferent%'
OR column1 LIKE '%bob%' AND column2 LIKE '%somethingdifferent2%'
基本上......现在我不得不重复
column1 LIKE %bob%' AND .........
只是想知道是否有更好的方法来实现这一目标?
答案 0 :(得分:4)
怎么样:
SELECT id FROM test WHERE
column1 LIKE '%bob%' AND
(column2 LIKE '%something%' OR
column2 LIKE '%somethingdifferent%' OR
column2 LIKE '%somethingdifferent2%')
它在逻辑上等同......
您还可以使用RegEx:请参阅How do I use regex in a SQLite query?