【发布时间】:2017-11-20 07:28:18
【问题描述】:
我想在给定字符串中找到表中所有具有特定列数据的行。
假设我有一个名称表。
+----------+------------------+
| id | name |
+----------+------------------+
| 1 | John Do |
+----------+------------------+
| 2 | Douglas Rutledge |
+----------+------------------+
| 3 | Herman Kelly |
+----------+------------------+
对于给定的字符串:“我和 Douglas Rutledge 参加了派对” 我想得到结果:
+----------+------------------+
| id | name |
+----------+------------------+
| 2 | Douglas Rutledge |
+----------+------------------+
或者对于字符串:“我刚刚遇到了 John Do 和 Herman Kelly” 我想得到结果:
+----------+------------------+
| id | name |
+----------+------------------+
| 1 | John Do |
+----------+------------------+
| 3 | Herman Kelly |
+----------+------------------+
我想象一个查询可能看起来像:SELECT * FROM my_table WHERE my_table.name IS CONTAINED IN "my_string"
【问题讨论】:
-
你试过
LIKE吗? -
@Ravi 我已经编辑了我的问题,你能给我一个例子吗?
-
你会很难接受的。您将需要解析整个字符串并以某种方式识别其中的名称。如果您只接受直接名称,这将容易得多。例如。
John Do, Herman Kelly, Will Smith而不是I really like the following actors, such as John Do, etc...之类的东西。如果这样做,您将能够使用 LIKE 运算符。
标签: mysql sql database row contain