6

如果可以在表中搜索其名称中包含搜索词的记录?

谢谢

4

3 回答 3

9
SELECT * FROM `my_table` WHERE name LIKE '%my_search_term%'

或者

SELECT * FROM `my_table` WHERE CONTAINS(name, 'search')

但请注意,LIKE 语句非常昂贵。如果您搜索大量文本,您可能需要考虑使用 Sphinx 为例。

于 2010-04-22T15:01:57.433 回答
2

当然。有CONTAINS谓语:

... WHERE CONTAINS(name, 'search-term')

还有LIKE运算符和一些 DBMS 允许使用正则表达式。

于 2010-04-22T15:00:30.543 回答
1

听起来你正在寻找的是LIKE

-- Get all people with phone numbers starting with 920
SELECT * FROM People WHERE PhoneNumber LIKE '920%'
于 2010-04-22T15:03:00.927 回答