有没有办法选择部分匹配的值?
问题描述:
例如,考虑:有没有办法选择部分匹配的值?
title 1: The Indiana Highway project
title 2: The Michigan Highway project
现在,当用户在表单框中输入Highway
两个标题需要显示。 如果用户输入Michigan
,则只需显示一个标题(标题2)。
有没有办法在MySQL或PHP中做到这一点?
答
如果您始终只搜索一个单词,则可以使用LIKE
关键字。
SELECT someField, anotherField, FROM table WHERE aField LIKE '%Highway%'
的%
s为通配符说,任何字符(或无)可到左边和公路的右侧。
如果你打算做一些更sofisticated,看看full text search。
答
使用MySQL中的LIKE运算符通过部分匹配来选择值。
SELECT title FROM table WHERE title LIKE '%Highway%';
答
SELECT * FROM MyTable WHERE title LIKE '%Highway%'
这应该做的伎俩。类似的东西会带回每一个结果,其中标题有言道某处内
答
标准SQL提供了诸如:
WHERE anonymous_column LIKE '%Highway%'
还有其他更复杂的正则表达式操作过,但是这将足以满足您的眼前目的。