在 MySQL 中搜索文本列中的字符串?
借助 LIKE 子句,您可以在 MySQL 的文本列中搜索字符串。语法如下所示 −
select *from yourTableName where yourColumnName like '%anyStringValue%';
为了使用上面的语法,让我们首先创建一个表 −
mysql> create table SearchTextDemo −> ( −> BookName TEXT −> ); Query OK, 0 rows affected (0.55 sec)
在表中插入一些字符串。查询如下所示 −
mysql> insert into SearchTextDemo values('Let us C'); Query OK, 1 row affected (0.28 sec) mysql> insert into SearchTextDemo values('C in Depth'); Query OK, 1 row affected (0.14 sec) mysql> insert into SearchTextDemo values('C in Depth with Data Structure'); Query OK, 1 row affected (0.18 sec) mysql> insert into SearchTextDemo values('Introduction to Java'); Query OK, 1 row affected (0.17 sec) mysql> insert into SearchTextDemo values('Java in Depth'); Query OK, 1 row affected (0.13 sec)
使用 select 语句显示所有记录。查询如下所示 −
mysql> select *from SearchTextDemo;
以下是输出 −
+--------------------------------+ | BookName | +--------------------------------+ | Let us C | | C in Depth | | C in Depth with Data Structure | | Introduction to Java | | Java in Depth | +--------------------------------+ 5 rows in set (0.00 sec)
以下是对文本列中搜索特定字符串的查询 −
mysql> select *from SearchTextDemo where BookName like '%in Depth%';
以下是输出 −
+--------------------------------+ | BookName | +--------------------------------+ | C in Depth | | C in Depth with Data Structure | | Java in Depth | +--------------------------------+ 3 rows in set (0.00 sec)
查看上面的示例输出,字符串“in Depth”已从列名“BookName”中搜索到,其数据类型为 TEXT。
广告