我想在我的网站上创建一个将在字符串中返回字符串的搜索功能。例如:如果SQL数据库中有一个列的值是“我的名字是哈利波特”的记录,那么用户可以搜索“哈利P”或“ott”或“我的名字”,记录会来在搜索结果中。
答案 0 :(得分:2)
在SQL中使用它:
SELECT * FROM `table` WHERE title LIKE '%$search_word%'
答案 1 :(得分:1)
使用 LIKE 功能。
SELECT * FROM myTable WHERE myName LIKE '%Harry P%'
SELECT * FROM myTable WHERE myName LIKE '%ott%'
SELECT * FROM myTable WHERE myName LIKE '%My Name%'
这里我假设myName
是数据库中的字段名称& myTable
是表名。
在PHP中,您的查询应该是
SELECT * FROM myTable WHERE myName LIKE '%$yourWord%'
答案 2 :(得分:1)
如果表格/将很小,那么LIKE '%word%'
的语句就可以了。
虽然您可能想要使用MyISAM表来使用全文索引this is possible in InnoDB too。以这种方式实现它会有点困难,但它将结合MyISAM提供的高性能文本搜索和InnoDB的所有优点(事务,行级锁定等)。
答案 3 :(得分:1)
select * from your_table
where instr(some_column, 'string_to_search') > 0