首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL -在一个字段中搜索多个值

MySQL -在一个字段中搜索多个值
EN

Stack Overflow用户
提问于 2011-01-26 11:27:06
回答 3查看 6.5K关注 0票数 0

Tablename: tbl_person

列: id、名称、bio

样本数据:(id、姓名、生物)

1,Mike,剑桥大学物理学学位

彼得,剑桥大学地质学学位

3、Sam,牛津大学地质学学位

问题:我想创建一个(我的‘’SQL‘)搜索,它可以接受多个值并在一列中进行搜索和匹配

示例:

专门搜索:剑桥地质学

我希望它能重现记录2,皮特

而不是所有的记录(因为它们包含匹配的关键字剑桥,地质学)

到目前为止,我的搜索是

tbl_person 中选择 tbl_person.bio IN (剑桥,地质学)

-现在这个不返回一个匹配--

有什么想法吗?

EN

回答 3

Stack Overflow用户

发布于 2011-01-26 11:34:53

代码语言:javascript
复制
    SELECT * FROM tbl_person WHERE tbl_person.bio
    LIKE '%cambridge%' AND tbl_person.bio LIKE '%geology%'
票数 1
EN

Stack Overflow用户

发布于 2011-01-26 11:35:58

尝试全文搜索,这将为您提供更多的功能和更好的性能。

http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

http://dev.mysql.com/doc/refman/5.0/en/fulltext-boolean.html

Any way to achieve fulltext-like search on InnoDB

票数 1
EN

Stack Overflow用户

发布于 2011-01-26 11:33:05

代码语言:javascript
复制
SELECT
  *
FROM
  tbl_person
WHERE
  bio LIKE '%cambridge%'
AND
  bio LIKE '%geology%'

您将根据用户进行的搜索为您的程序中的LIKE子句生成所有WHERE子句,然后将它们放在一起创建查询。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4804020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档