0

我有一个名为“table”的数据库,如下所示:

id  content
1     a
2     a b c
3     b a
4     c e a

我想获取内容中包含“a”和“c”的所有 id。

我知道我可以找到“a”或“c”在内容中的所有 id,如下所示:

select id
from table
where content regexp 'a|c'

但我不知道如何使用“AND”运算符

4

2 回答 2

1

我不会为此使用正则表达式,而是使用LIKE

SELECT
    id
FROM
    `table`
WHERE
    content LIKE '%a%'
    AND content LIKE '%c%'
于 2013-11-14T03:13:30.210 回答
0

你可以使用这样的模式:

a.*c|c.*a

这匹配 ana后跟任意数量的字符和 ac或 ac后跟任意数量的字符和 an a

或者,您可以将两个 where 子句链接在一起:

select id
from table
where content regexp 'a' AND
      content regexp 'c'
于 2013-11-14T03:06:15.890 回答