SQLite 在 WHERE LIKE 中的多个条件

Ran*_*rin 2 python database sqlite

无论如何在不使用 OR 的情况下在 WHERE x LIKE %x% 语句中有多个条件?

基本上我希望能够选择一些东西,其中 column1 LIKE %something% AND column2 LIKE %check1% OR %check2% OR %check3%

但是,使用 OR 删除了我之前对 column1 的第一次检查,但我需要将其保留在原位

这是我目前正在使用的......但我想知道是否有更好的方法来做到这一点,所以我不必继续重复 column1

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%'
Run Code Online (Sandbox Code Playgroud)

基本上..现在我不得不重复

column1 LIKE %bob%' AND .........
Run Code Online (Sandbox Code Playgroud)

只是想知道是否有更好的方法来实现这一目标?

Lau*_*RTE 5

关于什么:

SELECT id FROM test WHERE 
column1 LIKE '%bob%' AND
    (column2 LIKE '%something%' OR
     column2 LIKE '%somethingdifferent%' OR
     column2 LIKE '%somethingdifferent2%')
Run Code Online (Sandbox Code Playgroud)

逻辑上是等价的...

您还可以使用正则表达式:请参阅如何在 SQLite 查询中使用正则表达式?