sql - 我可以在 "IN"MySQL 语句中使用通配符吗?

标签 sql mysql wildcard

我想运行这样的东西:

select * from table where field in ("%apple%", "%orange%")

有办法吗?或者至少有比为每个关键字动态构建查询更好的方法:

select * from table where field like "%apple%" or field like "%orange%"

谢谢。

最佳答案

我不确定它是否比您想出的更好,但您可以使用 MySQL's regex capabilities :

select * from my_table where field rlike 'apple|orange';

另外,正如其他人所提到的,您可以使用 MySQL's full text search功能(但前提是您使用的是 MyISAM 引擎)。

关于sql - 我可以在 "IN"MySQL 语句中使用通配符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1652318/

相关文章:

java - Java 函数和 DB 函数哪个性能更好?

php - 从 dhtmlx 调度程序中删除 block 区域

Java 泛型和通配符

mysql - 使用 SELECT * 创建 MYSQL View

sql - width_bucket 不返回空桶

sql - 使用另一个表作为信息查询更新表?

java - SQLiteBindORColumnindexoutofrange异常

sql - 在 SQL Server 中替换整个表中的字符

php - 单击元素时,Mysql删除表中的条目

带通配符的 Ansible 复制文件?