MySQL SELECT LIKE or REGEXP to match multiple words in one record(MySQL SELECT LIKE 或 REGEXP 匹配一条记录中的多个单词)
问题描述
字段table.name 包含'Stylus Photo 2100' 和以下查询
The field table.name contains 'Stylus Photo 2100' and with the following query
SELECT `name` FROM `table` WHERE `name` LIKE '%Stylus 2100%'
我没有得到任何结果.当然,如果我搜索了
I get no results. Of course i would if i searched
SELECT `name` FROM `table` WHERE `name` LIKE '%Photo 2100%'
如何通过搜索Stylus 2100"来选择记录?
How can I select the record by searching 'Stylus 2100' ?
谢谢
推荐答案
好吧,如果您知道单词的顺序.. 您可以使用:
Well if you know the order of your words.. you can use:
SELECT `name` FROM `table` WHERE `name` REGEXP 'Stylus.+2100'
你也可以使用:
SELECT `name` FROM `table` WHERE `name` LIKE '%Stylus%' AND `name` LIKE '%2100%'
这篇关于MySQL SELECT LIKE 或 REGEXP 匹配一条记录中的多个单词的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:MySQL SELECT LIKE 或 REGEXP 匹配一条记录中的多个单词
基础教程推荐
- 表 './mysql/proc' 被标记为崩溃,应该修复 2022-01-01
- 如何根据该 XML 中的值更新 SQL 中的 XML 2021-01-01
- oracle区分大小写的原因? 2021-01-01
- MySQL 中的类型:BigInt(20) 与 Int(20) 2021-01-01
- 什么是 orradiag_<user>文件夹? 2022-01-01
- 如何在 SQL 中将 Float 转换为 Varchar 2021-01-01
- 二进制文件到 SQL 数据库 Apache Camel 2021-01-01
- 在 MySQL 中:如何将表名作为存储过程和/或函数参数传递? 2021-01-01
- mysql选择动态行值作为列名,另一列作为值 2021-01-01
- 在多列上分布任意行 2021-01-01
