0

我有一张这样的桌子:

+-------------+-------------------+----------------+
|id           | column1           | column2        |
+-------------+-------------------+----------------+
| 1           | apple iphone 6s   | iphone         |
| 2           | iphone apple 5    | apple iphone   |
| 3           | iphone 4          | samsung        |
| 4           | iphone 4          | apple iphone 6 |
+-------------+-------------------+----------------+

如何使用 rlike 语句返回 column1 的任何单词包含在 column2 中的所有记录?(在本例中 id=1,2,4)

谢谢

4

1 回答 1

1

尝试这个:

SELECT * FROM tbl WHERE column2 RLIKE REPLACE(column1, ' ', '|')

REPLACE所有出现的 ' ' 替换为 '|',这实际上创建了一个正则表达式,它匹配包含任何空格分隔的单词的字符串column1(例如,“apple|iphone|6s”)。

于 2016-08-09T17:50:14.280 回答