mysql查询时关于结果集中存在_\有关问题如何解决

mysql查询时关于结果集中存在_有关问题如何解决

mysql查询时关于结果集中存在_~问题怎么解决

select * from userInfo where uname like ‘%TT%’ 查询出来的结果是ok的

但是如果是select * from userInfo where uname like ‘%T_T%’ 结果中就有问题,包括 like ‘%san~%’ 和 like ‘%gren%’

userInfo表中 uname 的值有 TTai t_t 0T_T0 san~qiang sanqiang gerenyouxi grenyouxi



~和\,转义都是用斜杠




通配符 描述 

% 替代一个或多个字符 

_ 仅替代一个字符 

[charlist] 字符列中的任何单一字符 

[^charlist]

或者

[!charlist]

 不在字符列中的任何单一字符 



~ 应该不需要,你直接查。

改成 \ like ‘%gren\%’



SQL code


mysql> create table test(a varchar(30));
Query OK, 0 rows affected (0.34 sec)

mysql> insert into test values('TTai'), ('t_t'), ('0T_T0'), ('san~qiang'), ('sanqiang'), ('gerenyouxi'), ('gren\youxi');
Query OK, 7 rows affected (0.08 sec)
Records: 7  Duplicates: 0  Warnings: 0

mysql> select * from test;
+------------+
| a          |
+------------+
| TTai       |
| t_t        |
| 0T_T0      |
| san~qiang  |
| sanqiang   |
| gerenyouxi |
| grenyouxi |
+------------+
7 rows in set (0.02 sec)

mysql> select * from test where a like '%T_T%';
+-------+
| a     |
+-------+
| t_t   |
| 0T_T0 |
+-------+
2 rows in set (0.00 sec)

mysql> select * from test where a  like '%san~%';
+-----------+
| a         |
+-----------+
| san~qiang |
+-----------+
1 row in set (0.00 sec)


                        
  
  
                    
mysql查询时关于结果集中存在_\有关问题如何解决

相关文章:

你感兴趣的文章:

标签云: